Zero Engine

Posted by Ace on Jan. 13, 2010, 12:05 p.m.

Like most of you, I started GameMaker hoping for "Easy Game Development". However, since GameMaker doesn't offer lots of "Easy Game Development" outside of a mid-level programming language, I thought I'd fill the gap a little bit with what I call the Zero Engine.

What the Zero Engine aims to do is make the world of game programming MUCH easier on the programmer for quick game idea prototyping and rapid development without worrying about technicalities. What that means is that, if it becomes a standard, it could become the way most users program in GM simply because it is the easiest method available for game programming in GM - period.

This idea started as an intensely modified version of Brod's platform engine supporting multiple player objects and pixel-perfect moving jumpthrough slopes/stairways/platforms, that uses a single script for everything. However, I felt it could go a LOT farther than being just a really awesome platforming engine.

In fact, beyond the single-script platform engine, I've added universal configurable keyboard/joystick input support and added a mechanism to use Finite State Machines which allow you to program an object as if it were in a 'finite' state and change between these depending on the state. I cannot stress how useful these are to game programming in general as they're what most professional game developers use. I've included a set of simple tutorial scripts and programmed a 'complex' game character (Megaman X) showing you how to use the input and state system alongside with one another. This mixed with some other VERY useful scripts such as motion blur or animation attachment found in the Zero Plus section makes this an engine worth using. Not to mention I have included support to fix the scaling problem GM games have on most modern computers. I still plan to add Action-RPG movement/attacks and inventory management functionality to the engine as well, and these, like the platform engine, should be entirely self-contained systems.

This engine is opensource and, as such, I'm hoping for others to help me improve on it. This is, as far as I'm aware, the easiest, most versatile, generally functional platform/game making engine available for Game Maker.

http://gmc.yoyogames.com/index.php?showtopic=454506

File Link:

Comments

Ferret 14 years, 4 months ago

Quote:
Might want to fix your link. Not everyone is smart enough to remove the quotes and the repeated HTTP.
Not to mention the fact that you forgot the colon in the second HTTP.

brb downloading

Ferret 14 years, 4 months ago

This is really good, pretty much what kilin said sums it up. I didn't find the collisions that bad except on the top right slope when running into the wall. Code isn't the simplest as kilin said but I think it's pretty easy to follow thanks to the useful comments.

Cesque 14 years, 4 months ago

Currently working on understanding the FSM system you put in there :P

Actually… currently working on wondering why the fuck does GM code editor slow down when you include comments in it.

Castypher 14 years, 4 months ago

Deleted?

Someone was unhappy with my comment, it seems. Take criticism like a man; it was plenty constructive.

Ace 14 years, 4 months ago

I appreciate constructive criticism when it applies to the work I've done in order to improve it. However, I would appreciate if you had some negative comment about the engine to suggest a way to 'fix' the said issue or at least make it very clear what you're referring to. Otherwise do not post comments that attempt to deface my hard work simply because you wish to say something negative. If you do, I will simply delete your comments. After all, "It's nothing revolutionary" contributes nothing to helping me make it revolutionary. Besides, trolling is annoying. So sue me.

Castypher 14 years, 4 months ago

No offense, buddy, but I think you needed to look over the comment again before you deleted it. In no way was I "defacing" your work. You've got to realize that criticism isn't always as attractive as you want it to be. Grow up thinking that, and you'll screw yourself over.

I had a list of things I didn't like about the engine, but I don't have hours of spare time to fix code. If you wanted me to add ways to fix those, you should've asked beforehand instead of blatantly accusing me of making condescending remarks.

"It's nothing revolutionary" does contribute in that it can help put people in the mindset of making dramatic improvements. If you don't want people to be honest, then I'll lie and tell you it's absolutely perfect in every aspect.

And lastly:

Quote:
This is, as far as I'm aware, the easiest, most versatile, generally functional platform/game making engine available for Game Maker.
You might want to do some research before you make a claim like that. This type of thinking is fairly common, and generally closes your mind to suggestions, as you pointed out for me.

As I stated before, there are simpler, more effective ways to approach this engine. Deleting my comment because you thought I was trolling, when in reality it's that you don't like my style of criticism, is rather immature.

Next time, take a moment to ask instead of making an assumption so quickly.

Juju 14 years, 4 months ago

Quote:
game making engine available
I can't make a TDS with it. That claim is wrong.

Here are a few things you don't have:

1) Lighting engine

2) Shadow renderer

3) Physics

4) External file manager

5) Easy global scaling (JW-like games)

6) Infinite room scrolling

7) Any online capabilities whatsoever (updater, player-to-player connections, player-server connections)

8) Assisting and opposing AI

Et cetera. You have a long way to go. Keep going.

Ace 14 years, 4 months ago

First of all, since you have plenty of time to hover over this topic and come back to tell me off about deleting a comment that wasn't worthwhile in the first place, then you should have the time to realize that I only made this engine because I decided to help others who couldn't and it required plenty of hard work but, obviously, no reward or even recognition. Though, if you think there are simpler ways to do it, feel free to show me. I wouldn't have had to create this engine in the first place if there were 'better ones' out there available to people. Believe me. So either show me something useful in your criticism or stop trolling my topic. If you've got time to come back to defend your methods, then you've got time to show me a better way to approach this. If that isn't the case, then this bickering between us is useless. This isn't personal. I just don't enjoy wasting my time defending my work when there was no point in you asserting your negative opinion in the first place. Even assuming it would 'help' me, the only 'good' that would come out of such a 'truth' is me saying "oh, sorry. my engine sux. you're right. it's really not worthwhile to anyone. it can be done better. I suck. I'll remove it immediately." So, forgive me for not being as pessimistic as you, pal, but I don't think it's anywhere NEAR as bad as you say.

Juju 14 years, 4 months ago

A negative opinion is not an unhelpful opinion.

Castypher 14 years, 4 months ago

As many areas as I'd like to reply to that, I'll stick to the end, for the sake of keeping this comment box small.

When did I say it was bad? I said it was a bit clunky. Clunky != bad. Also notice the word bit, as in…not much.

Associated with this definition are somewhat, slightly, etc.

Did you even read the comment before you deleted it?

Also, I…"hover" over topics that I have an interest in, so excuse me for being interested in your blog.