This post is sort of in-between multiple forum areas, but I think this spot applies the best. Before we get this started, for reference, I have TGF, MMF, Photoshop, and 3DS Max, and I’ll accept any help.
I want to use MMF to create a Spore Tide Pool-like game. It’s possible that MMF would not be practical for the task, but I’m more comfortable in MMF than anything. This is quite a complicated goal, and there are a few points I’m not sure about before I really get into creating it. As I said, I’ll be happy to accept any help.
Editor
First of all, there is the matter of the editor. If you have played the Spore Flash Game (http://img494.imageshack.us/my.php?image=spore9mv.swf) and watched trailers and gameplay footage from the Tide Pool Phase, you can easily see the difference in complexity and ease between the two editors. Obviously, the one in Spore looks more refined. The Spore Flash Game uses a few locations on the body that you can place different symmetrical parts onto. I would like to make an editor that is more open, which also requires better physics to deal with it.
If possible, I would like the base to be able to change size, and then parts can be attached around its perimeter with the mouse. This will probably some trigonometry to determine the circular region around the body that fins and weapons can be placed, and then position them. That won’t be the hard part, though. The hard part is having that affect the movement and transfer into the game properly. I don’t know if asymmetrical organisms makes sense from a biological standpoint, but assuming the organism was asymmetrical, I would want it to move like it was. Also, in the Spore Flash Game you will notice that turning will also propel you forward. I like that, and there could also be more expensive fins that compensate for it. Also, there is the matter of the collision physics. (Unless things wouldn’t collide in an environment like this, which would be good news for me.) My physics is rusty, so I don’t even know where to start.
Scrolling and Movement
I would assume that in that level of size, there would be no boundaries, and the environment would basically continue endlessly off in every direction. So the game has to be able to scroll freely, which means that instead of the player actually moving from place to place, probably the other organisms should just compensate for the movement. Essentially, a you scroll off in a direction, anything a certain amount behind you should be eliminated and then new things should be spawned a certain amount in front of you. I would like to move the player with the mouse, and I’m not sure exactly how to handle the scrolling and movement. I guess, check the distance between the mouse and player, and accelerate based on players acceleration and the distance, as well as rotate. (If this worked, the whole accelerating while turning thing would be not applicable.)
Graphics
Also, I’m not sure how to go about the graphics. To get the rotation and to keep it smooth, it may require much use of the alpha channel and active picture objects. In the Spore Flash Game, things are very simple, but in Spore, the graphics are quite complicated. Any opinions and/or suggestions?
First of all, you can't hope to match the quality of the Spore game in terms of the editor, the physics, or the graphics EVER in MMF.
However you can create a life sim game (although it won't compare to Spore so get that out of your head).
It all seems over ambitious and before I go off on a tangent giving advice about trig or character formats, I would like to know what your goals are for this project?
I know that MMF is not nearly as capable, and may even be completely impractical, but I have little skill in anything besides MMF. I've looked into Java, and I could learn it, but I'd rather stick in an area I know.
My main goal is to create a game to pass the time. I enjoy programming quite a lot and I need something to do while I wait for the real Spore to come out. When and if the game is finished, then I'll leave it open for download at TDC and maybe other places to be freely played and distributed.
Realize I am only comparing it to the Tide Pool Phase of Spore, and it is the simplest. Once you're out of the Tide Pool, it barely affects the rest of the game. (Apparently it determines your starting position.) I know the graphics will not be absolutely as good as Spore, or if I cared to put the time in to try that in MMF I might as well learn to really program. Still, I'm going to try.
Edit: We could try for some sort of freak hybrid of Spore and EVO, graphics-wise. I don't even know where to begin with that one. We could also make it look cartoony, though I would mostly be against that.
edit:
why would you not like cartoony graphics? you don't plan on making this game as large as spore anyways, so cartoony graphics would actually add an amusing/enjoyable feel to the game, considering you make it.
I don't know, I wouldn't want them to be too cartoony. Old-school looking would be fine, but too cartoony doesn't appeal to me. Then again, maybe it would be better that way. I guess, as long as it's cartoony that I can edit and play with, like maybe adding three eyes (eyes?) or making it bright pink.
@Vortex - Yeah, but the graphics can be flash-like (one of the Christmas Compo looked like it was flash, but it was pure MMF). You just need to spend more time on it.
I would first design on paper what exactly you want to do. After your done with that, then make the editor FIRST and make the engine second. The reason you want to make the editor first is so you can design an engine that actually can use your characters later (and you can test the engine to see if it works).
For mouse movement do you want to be able to drag creatures around or do you want them to move towards the mouse?
As far as scrolling you have two options: A) Generate the maps on the fly, which may be hard to do or B) Have an external map file which contains a large amount of saved data that is loaded a chunk at a time (as it is needed).
The worst part about making two parts that intertwine is that they have to be designed to work together, or the entire thing falls apart. You're right though, it might be easier to start with the editor.
If you watch the videos on Spore, you will see that when he clicks the creature orients and moves toward the point where he clicks. Speed seems to vary based on distance, so I might have to use the Pythagorean Theorem to calculate distance between the center of the player and the mouse. Or I’m over-thinking it, can you think of an easier way? Unless it is much more efficient, if it’s an extension I’d rather not bother with it. Why? Because I like to keep everything as tight as possible, and another extension to make my life easier will just make it fall apart.
Maps would be generated on the fly when you load up the environment. Then, as you scroll, it eliminates cells that wander too far and creates more in the direction you are heading, as well as maintaining a certain amount in the area. Then, when you exit, probably the current positions of everything will be saved, but that might just take up space, so I might let it randomize then too. (Keep in mind that the world should feel endless and massive, so big that no matter what you do, you can never find an edge. Unfortunately, without being able to go back and see landmarks, it may end up feeling like what it is, a small randomly generated area.)
Well you want to use the Alpha Channel Object and you may need Advanced Direction also (to caculate the angle between two points). Extensions are generally there to help you, ignoring them for the sake of ignoring them is kind of pointless...
More extensions is more for the program to deal with. If possible, I’d rather do everything by hand. The Alpha Channel Object, of course, expands the functions of MMF, so I’ll use that one gladly.
Drawing things out on paper made me realize how little I knew about the interaction between cells. Think, if you were single-celled, what might you be like? I’m thinking fighting bacteria, amoebas, and maybe some viruses, I don’t know about that one, would be entertaining. What other weird little organisms could you fight? Even if it doesn’t really exist, as long as it will be very entertaining, sounds good.
For parts, in the area of consumption, all I have is a kind of filter. Any other ways that single-celled organisms (besides amoebas, crazy amoebas) eat? For attack, a spike and maybe some sort of poison injector might be good, as well as something that can eat the wall of their cell. For movement, flagella and cilia, of course. Any other parts I’m missing?
And Radix, let’s not discuss how easy Phizzy’s mom is with trigonometry, I’ve already created 6 proofs for it. Proving it with Tangent was the hardest.
For eating, single-celled creatures can use phagocytosis, literally engulfing their food with their membrane. Small or nonpolar nutrients can also diffuse into the cell if the outside concentration of that molecule is greater then that inside of the cell. A cell can also have pumps, specialized proteins attached to the membrane that use energy to pump in or out other molecules. If you want to follow evolutionary theory, you can have the cell eat but not digest an autotroph, a creature that makes its own food from the energy in light and/or chemicals, and exploit the food that it makes.
For fighting, maybe secreting hormone-like substances that enrage or calm down enemies would be cool. For movement, don't forget about ameoba's pseudopods, just stretching out their cell membranes in foot-like structures.
Viruses are essentially just genetic material (DNA or RNA) in a protein coat. It injects the genes into a cell, and the cell's own machinery reproduces the virus (copying the genes and using the genes to make new protein coats) until the cell bursts. Sometimes the virus' genes incorporate themselves into the host's DNA, not making new viruses until a certain outside stimulus.
The player could get more powers/structures through acquiring more DNA. Bacteria can transfer genetic material between each other through conjugation, where the DNA travels through an interbacterial tube called a pilus. Bacteria can also pick up loose DNA during times of stress. Furthermore, viruses can accidentally pick up bacteria genes during their "birth," so the cell can gain different DNA in that way.
Most of what I wrote is probably too complicated to be fun, but I hope it helps a bit.
"Omg. Where did they get the idea to not use army guys? Are they taking drugs?" --Tim Schafer on originality in videogames
The plan is to take something too complicated and play with it so it is fun. Ameobas, and the Phagocytosis, will be the hardest things to make, and I might just make ameoba-like blob things that really share few of their characteristics. Diffusing into the cell could be the primary way to eat, and to eat more capably you must get a filter, which increases gain rate, a pump, which can suck in food, or a sort of pilus-like tube that will allow you to eat other cells DNA.
The hormone idea is neat and unique, I think I can use that. Calming would probably be the goal, since making your enemy angry would be kind of counterproductive in a game like this.
Viruses might be the hardest enemies to make work, since if one injects DNA into you, you are basically dead. You will then be used to spawn more viruses and that's about it. They could slowly reduce your health as they try to inject, and you can run and kill them.
I guess the pseudopods could just be something you attach, which doesn't really make sense, but oh well. Any thoughts?