Wrong question. Nobody will hand you out a complete game engine
It makes simply no sense. May cost more time to understand what does what than rewriting it from scratch. And even when, it would be more stealing somebody elses engine than making an own game. That's not the way how gamemaking works.
You are simply not suited to write an RPG as long as your main question is still how to create an RPG. You miss too much knowledge of gamemaking. You miss too much basics. Like defining a problem that can be solved. Making an RPG is not the problem. But the goal.
An RPG is noting else than a bunch of solved little problems. Like how to jump to frames, how to work with subapps, how to work with values, how to save, how to load, how to use Fastloops, how to ...
This knowledge can and should be learned in very small projects. Even a Pac Man clone will give you lots of problems.
I would suggest to start where everybody else has started: with a very small game. Then spend some months or even years with more advanced little games to learn the needed basics. Up to the point where you think that your knowledge is big enough that you can make an RPG with that. Trust me, will be still not enough. But you should have at least learned how to solve the now following problems
I can make most of the engine myself, its just certain parts that confuse me that I would look at source code to GET HELP WITH, NOT COPY. I can't figure out how to make enemies attack in order depending on speed, and if they have the same speed how to determine which one attacks. Also I don't know how to make a single frame for the battle engine and import enemies to it depending on where you are and how to make a random numeber of enemies to appear. Yes, I am good at MMF2 Tiles, but no I don't know how to do shit like that.
"Actually sir, we found a tiny unicorn in your exhaust. It was jumping around poking holes in your gas tank." "Oh thank you I did not know that. A tiny unicorn? Wow."
"I can't figure out how to make enemies attack in order depending on speed"
- Spread a value/fastloop trough them and check which one's got the highest speed.
"and if they have the same speed how to determine which one attacks"
- Pick at random? Or always have the same player attack first. There's no real solution to that problem, just pick whatever method best suits your game.
"Also I don't know how to make a single frame for the battle engine"
- What exactly is so hard about that? Can you be more specific?
"and import enemies to it depending on where you are"
- Use a global array/global values/INI/anything.
"and how to make a random numeber of enemies to appear"
- The Random() function. It really depends on your engine.
"Yes, I am good at MMF2 Tiles, but no I don't know how to do shit like that."
- Sorry if I sound a little elitist, but if you don't know how to do stuff like that, then you obviously aren't good enough.
Huh? Why ask you for a complete engine then? You should have learned that it is much more time consuming to isolate a special part of a complete game engine than simply asking for help or an example file for a specific solution.
And you should have learned that you should Never try to solve lots of problems at once. Plus Never try to solve it in the main build. Pick ONE problem. And test it out and solve it in a little test app. Then, when you got it to work, implement it into the main build. And THEN start with the next problem. You ask for too much at once here.
This little test apps also gives you your personal file archive for special cases. And you can use them in the future then. I have made hundrets of them for my little RPG
So pick your first problem in your list, build a testapp, throw in some enemies and your needed involved stuff like counters, and start to tinker around with it. Once you have such a testapp and you get stuck, you can ask specific questions. Like, hey i tried this way, and cannot get it to work? What am i doing wrong here?
That's the way to go. And not, hey, hand me out a complete engine. I want to isolate how i can set a counter to a value or add values to the counter.
Because that's a way to solve your first problem with the timer. Think in values. Always handy. No matter if Alterable Values, Global Values or Counters. Counters have the benefit that you have a better control while tinkering around with the problem though. Put in one as a mastercounter. Put in some for your enemies. Add 1 to the counters when the master counter is zero. When one of the enemie timers reaches a specific value, stop adding values to the other counters by etting the mastercounter to 1, set back the specific enemie timer to zero, and let your specific enemie perform an action. Then set back the master counter to zero ...
i do believe that an example pack by Neonair has a very good engine. It has three heroes attacking 3 enemies and such. Although, its for tgf, it can open into mmf. You should also try reading my article on the subject as well. Oh, and did you use the sites search function? Thats what i did.
All platforming problems can be mostly solved here:
That's the next thing I need to work on for my game too, an RPG engine for the battle mode. I've done enough in VB before to have a pretty good idea of what to do, but I'd think it'd be way harder if you have some existing code already and you need to sift through somebody else's engine to see where you can "plug" in some parts to make yours work. Personaly, I hate trying looking at other people's codes- and they're not nearly as convoluted and crazy-messy like mine are
Axel's right on a few points. If your enemies have identical speed, make the computer randomly choose between the two, or move to another comparison like their level to see who goes first. To have them attack, just give them each Alt Variables like SPEED and ATKREADY. Then you could add 1 to ATKREADY every second or so, and when it equals the SPEED turn a flag on to tell the computer to halt the ATKREADY adds for the rest of them and have that one that stopped the process attack, while setting it's ATKREADY value to zero and turn the flag back off. Shew!
(It's important to note that for my idea above, the enemy with the LOWEST speed value will attack sooner than one with a higher value, so just make DEMONIC CHEETAH'S speed = 5 and KILLER MOLASSES' speed = 12 lol!)
"Del Duio has received 0 trophies. Click here to see them all."
"To be a true ninja you must first pick the most stealthy of our assorted combat suits. Might I suggest the bright neon orange?"
DXF Games, coming next: Hasslevania 2- This Space for Rent!
Then constantly Subtract 1 from wait, and when it equals 0, turn a flag on which says it's ready to attack, then when it's ready check to see if anything else is attacking, and if it isn't make it attack, turn the flag off and reset the wait.
Stop picking on the noo..er, newb, guys. That's what the other forums are for . I personally prefer to download engines myself, making a simple RPG engine is well... boring. I'd rather spend more time on making the game more fun.
I could probably make a nice FF-style engine, but I'm not leaning that way. I'd rather make a Fallout Tactics style engine for my RPGs. But still... if you'll fix my scripting engine problem, I'd be happy to make you a FF style engine, since it's based off the same concept. Heck, I'll even throw in a conversation engine (a variant of the scripting engine), where you can have those multiple choice conversations without having to code them into string text objects.
"I can't figure out how to make enemies attack in order depending on speed"
- Check through each person. Let's say A has 20 speed, B has 30, C has 2. Do a condition where if B's speed > A's, set (something) to B. If C's speed > B speed, set (something) to C. The one that's highest, the (something) value will be the one that moves first. If it's too slow, then fastloop everything.
"if they have the same speed how to determine which one attacks."
- Random number if you're lazy. Sort by name if you're lazier. Or you can compare agility scores or experience the same way you do with speed. MMF's "pick at random" is hardly random. Dunno if they fixed it in MMF2.
"Also I don't know how to make a single frame for the battle engine and import enemies to it depending on where you are"
- You're doing everything in the same frame? Use global values for say, character HP, mana, stats, etc. Now put ALL the enemies in the same frame. Destroy them at start to comply with the object limit. When say, character runs across Enemy X, you load the stats of Enemy X from an INI file, then "Create Enemy X" in the frame. I personally don't like importing from files too much. Sure, it allows players to create mods, but it also allows players to read the stats of creatures and stuff.
"and how to make a random numeber of enemies to appear."
- A classic style is to use an 'encounter table'. Then roll a random number. E.g. if you roll a 2, a goblin and an orc appears. Roll a 4 and 8 samurai-ninjas pop up. The more difficult enemies are higher up on the encounter table, e.g. roll a 40 and 12 dragons appear. You start off making a roll from 0 to 5 (or whatever) then add the character's level to it. Code would look something like "Random (5) + Char_level". If the character is level 12, then he'd get encounters from rolling 12 to 17 on the table.
Disclaimer: Any sarcasm in my posts will not be mentioned as that would ruin the purpose. It is assumed that the reader is intelligent enough to tell the difference between what is sarcasm and what is not.