Game Types and How to do Them
Some of you may be familiar with Popcap games. They have quite the stable. There games fall into specific categories and many of them are just variations on a game type. For instance, Zuma is similar to Tumble Bugs with graphic variations and a new theme.
I am wondering if we and Clickteam, can do more in the future to make certain games easier to create. Very advanced users could pull some of these game types off, but it does take a lot of figuring out and various methods.
So, I thought I would throw this out as a topic. How would you create the following games? Is there a way to help that along with extensions, movements, or new MMF features? I mean, a way to make it rather easy to create a game type, and there many types.
Some game types that are interesting, (add your own):
Chuzzle. A puzzle game where you simply slide groups of fuzzy ball creatures horizontally and vertically to match colors of three or more.
Zuma and Tumble Bugs: You have a character that shoots colored balls from the center of a spiral. Around that spiral balls roll in and along the track. You keep them from getting to the end by shooting a color that matches two or more. There are plenty of power-ups that change shots and the way the balls act.
I may list some more later.
Re: Game Types and How to do Them
Quote:
Chuzzle. A puzzle game where you simply slide groups of fuzzy ball creatures horizontally and vertically to match colors of three or more.
Sounds to me that AGBO can do this kind of game easily :)
Re: Game Types and How to do Them
Having used the PopCap framework for a long time, I feel that I can shed some light on this subject :).
The very first thing that MMF 2 needs is HW acceleration and smooth rotations.
I think we need some improvements to allow better control over object selection.
So besides being fast enough and a lack of control over objects, MMF 2 can already create these types of games. Personally I prefer programming over events though.
Over the years I have used C++, C#, Flash, VB, Torque, ect. MMF 2 is still my favorite choice for rapid prototype development, but sadly I can't use it for any of my main stream work because it is simply too slow and I don't have enough control over things :(. I worry that if I run into a bug then I might not be able to fix it, and it might take CT months to get a patch out.
I know it is easy to say "If such bugs were found, a patch will be released as soon as possible" but that isn't good enough for a lot of clients who expect hard deadlines.
I know I am a bit off topic but I felt that it was relevant to share the reasons why I can't use MMF 2 in contract games.
In terms of the games you mentioned I know for a solid fact that Zuma uses a form of spline interpolation. I would imagine that Chuzzle uses an array.
I find that not being able to create custom data structures easily in MMF 2 is a huge limitation :( .
Re: Game Types and How to do Them
Quote:
The very first thing that MMF 2 needs is HW acceleration and smooth rotations.
You have been out of touch while on vacation, haven't you :D
Quote:
Over the years I have used C++, C#, Flash, VB, Torque, ect. MMF 2 is still my favorite choice for rapid prototype development, but sadly I can't use it for any of my main stream work because it is simply too slow and I don't have enough control over things :(. I worry that if I run into a bug then I might not be able to fix it, and it might take CT months to get a patch out.
I don't think MMF is intended for those who are specializing in all things computer at university and beyond. For you it was just a transition product. For others, it allows them to release the inner artist.
As someone who does use MMF to earn a living, I would point out that it is entirely expected these days to use multiple development tools. I use about a dozen - most of them for creating the necessary artwork. I've also used VB and had a project come crashing to a halt because of a VB bug that I couldn't get MS to fix. It's rare to find any tool that doesn't have a few bugs you have to work around. Lateral thinking, that's the skill you need :)
Re: Game Types and How to do Them
Quote:
You have been out of touch while on vacation, haven't you
Yeah, pretty much ^^.
Quote:
I don't think MMF is intended for those who are specializing in all things computer at university and beyond. For you it was just a transition product. For others, it allows them to release the inner artist.
That's great, except there a large group of people who want to use MMF 2 for casual games but move to different APIs. There was a project that I could have used MMF 2 for but it would have ran much slower then my other alternatives.. It would be one thing if MMF 2 had a defined audience... What exactly is the target userbase?
To finish this point I will direct you to a quote from the MMF 2 sale page:
Quote:
Discover the secret tool used by so many multimedia pros, game creators, and people from all walks of life.
;) .
Quote:
As someone who does use MMF to earn a living, I would point out that it is entirely expected these days to use multiple development tools. I use about a dozen - most of them for creating the necessary artwork. I've also used VB and had a project come crashing to a halt because of a VB bug that I couldn't get MS to fix. It's rare to find any tool that doesn't have a few bugs you have to work around. Lateral thinking, that's the skill you need
That's very true. Personally I don't really care for VB.NET but that is another story :P . My main problem is that almost every other tool allows for the creation of various data structures to store large amounts of information effectively. In MMF 2 dealing with a large volume of data is a real pain as there is no way to say create a structure. We have arrays and dequees but they are limited to strings and integers. It is hard to group related data together... This leads to massive work arounds for a relatively common and simple task.
Then there is the whole deal with floats and integers and just creating some complex logic (where you would normally use nested if else statements and such) is very convoluted because of the lack of nested events (Unless I missed something while on vacation :) ).
So it is when this lateral thinking would take more time then required to develope in another language that we come to the main bulk of the problems :) .
Re: Game Types and How to do Them
This thread is obviously not going the way Nova intended it to, but I have to agree with vortex2. MMF's side-effectish behaviour requires years of experience with it, to get only the simplest of things done.
When I started (with KNP that was), random things just happened and you got used to never getting what you expected, but then taking the closest result to what you wanted instead, just to watch it turn to something completely else when you later changed something that didn't have any obvious relation to it.
So much about user friendly :/
Rant aside, what I think MMF needs are better level editing capabilities. I talked with our CT guys about this subject once at a convention but obviously my idea was too big of a change or they did not get my point. I proposed total separation of events and objects and frames.
E.g. you have a list of event-object-sets, let's say "menu", "help" and "game". An event-object-set would consist of the events we know from the event editor and a set of objects that are used in the events (like in the sidebar of the current frame editor.
Now every new frame that you create, you select the event-object-set that you want for it, and you get the list of objects so you can place them on the frame.
The point behind this idea is that you can have lets say 100 levels, that share the same event-object-set. So if you change the animations of an object, you do it ONLY ONCE and not 100 times. If you change the events for an object, you do it ONCE and ONLY ONCE.
In current MMF(2), if you have three levels, and change how something works, you have to copy stuff around or do the changes three times. Ouch.
Another thing. MMF2 needs to be able to set up the alterable values and string of an object IN THE LEVEL EDITOR AT DESIGN TIME and PER INSTANCE. So let's say you place three enemy objects on the frame, you can click on each of them, set up a different string (e.g. a name), change alterable values (e.g. hitpoints, difficulty level or what ever).
This stuff is important! Having to write a custom level editor everytime you want a game with more than one level is NOT fun!
The only workaround is to put all levels in one frame, at the expense of performance (which already isn't very fast, especially if you consider using more than one layer or any graphical effects).
To allow people to make more professional games with MMF2, certain things have to become easier. Beyond the point of a "space invader extension" or "pacman extension". Where is the creativity in that?
While I'm at it, MMF2 needs a scripting interface. I've seen a nice attempt in another thread here, but in my opinion this should be facilitated from Clickteam! Take a look at shockwave (adobe director). Guess why they make all the cool games? Because you can script a 3d racing game within a day! I've been clicking since 94/95 (12 years!) and scripting since 2005. What a surprise, but scripting comes so much easier despite all lack of experience in it. No workarounds, straight forward logical implementation. No side effects, pure functionality. From my point of view MMF is so trapped in it's own shell of "keep things easy and drag&droppish" that it is blind for the opportunity of scripts (which in many cases actually makes things easier! Believe it or not).
Did I mention that MMF should obey to the priciples of object orientation? Ah well, maybe another day.
Re: Game Types and How to do Them
Random really has a point.
There is a huge difference between making a "easy pacman extension" and expanding the core functionalities that in the end also makes it easier to make a pacman game.
As I see it, MMF2 events are already very similar to a linear script like this:
Code:
while (true) do
//events here
end
But it is limited to that and only that.
I see it as a programming language but it doesn't have theese features:
You cannot declare functions.
You cannot do recursion
You cannot return data to an expression by running events (coupled with #1)
You cannot reuse code (includes), you can only copy/paste
You cannot expand on existing objects (like eventing extra actions/conditions/expressions for given active objects)
You cannot nest code for better code structure and program flow (I've suggested sub-events for so long I can't even remember now)
How powerful would MMF2 not be if you could do all this?
Imagine making custom actions for your "enemy" object like "Attack", "Flee", "AlertOtherEnemies" and so on.
Re: Game Types and How to do Them
You cannot declare functions.
> But you can use fastloops (with one loop)
Imagine making custom actions for your "enemy" object like "Attack", "Flee", "AlertOtherEnemies" and so on.
> This could be pretty nice :)
Re: Game Types and How to do Them
Quote:
Originally Posted by Sphax
> But you can use fastloops (with one loop)
But you can't return a value or string back to the callee without storing it in some counter or global value which isn't very practical.
Fastloops with 1 loop isn't very practical either. Also having the stuff string identified doesn't allow MMF2's IDE to become very smart for example the ability to show you your different functions in a list or in some sort of autocomplete/intellisense when using it.
Re: Game Types and How to do Them
Yes, this thread is going is straying off in a different direction than I intended, but I find it very interesting.
I hope we can cover all the ground here and keep this discussion going.
As far as the suggestion of more advanced capabilities and scripting goes, it sounds more practical the way it is being related.
However, those ideas relate to the quesiton of how many of the bulk of users would be able to incorporate them in their game creation? At what point might the sound of these advanced features scare people who want easy and simple game creation?