New account registration is temporarily disabled.

WHY RM2K3 IS TERRIBLE FOR ACTION GAMES

Posts

Pages: first 123 next last


engine: not rpgmaker 2003

Honestly I really don't care what engine people use and what for but I get the feeling people are missing crucial things on how an action game is made. So this can be a potential discussion and perhaps LEARNING experience, I guess...

1. Tile based movement

In rm2k3 (by default) When moving around in the game world, if you want to turn, you have to also move a space in the direction you want to turn. Precise movement has been key since the first Legend of Zelda. In LoZ 1 you would move in 4 directions but still in a pixel movement grid. Troy explains it better than I can: http://troygilbert.com/the-legend-of-zelda/movement-mechanics rm2k3 doesn't quite have the built in control quirks to remedy this. But hey let's look at:

2. Hit detection



In rm2k3 you take up a 16x16 square, you can only move along these other 16x16 squares. A charaset sprite takes up more than 16x16 but it's merely pasted over the square we speak of. To detect when two events collide is rather fishy, the two squares have to be NEXT to other or over each other in order to trigger a simple x is same as x2 scenario. Keep in mind we're using coordinates not the exact borders in which they hit. There are many different ways to have a sword appear and hit the enemy near you but the key thing is, it is the same as a chess board, it doesn't matter if the hit boxes match, it matters if the coordinates match. Which is problematic if you want say... a sword with the hit range of 12x8 pixels in front of your character appearing at a set time and hitting something else precisely.




Oh...

3. Picture/variable detection is more trouble than it's worth

A tutorial and example done by Kazesui ( http://rpgmaker.net/tutorials/498/ ) shows how to do pixel movement in rm2k3 (of course I have never seen anyone else actually use this to make a full game). Keep in mind you are not even using event movements anymore, you are defining hit box borders via variables and checking to see if another bunch of variables are similar. Not only that but you also have to update the movement of the picture and animate it. Fun right? You are no longer using rm2k3's database, event movement or anything that it was intended for. This defeats the purpose of using the program in the first place. I haven't even started on the possible lag issues you run into if you don't do it correctly.

If you are willing to spend hours using Kazesui's methods, then hat's off to you. I cannot stop you. I cannot wait for you to prove that you can spend an afternoon on game maker for the first time doing it wayyyy faster http://forums.tigsource.com/index.php?PHPSESSID=399f6e66456ccf4bdf63270f2582d5e7&topic=3251.0


also: santa claus isn't real

4. As for RMXP and above...

Scripting in RMXP+ is certainly more capable than this, no doubts there. But if you don't know how to script plz use game maker or learn to code (in which case something even better is available).

All in all, if you are the middle of making an rm2k3 action game. Ask yourself, is your game really precise? Can the player feel at home moving around in the game world? What limitations are you working against when it comes to interesting boss fights? Can a high speed chess game be any enjoyable???

peace.
To your last question: yes. An action game, is not about just movement. I personally enjoyed action like games with tile based movement, so unless i need to constantly dodge 5+ missiles at the same time to survive, it doesnt really matter. (for me). Its more like a design choice, than requirement.

Also, regarding rm2k3, i am pretty sure that you can get pixel coordinates, and check against boxes, while maintaining fast paced tile movement...
LockeZ
I'd really like to get rid of LockeZ. His play style is way too unpredictable. He's always like this too. If he ran a country, he'd just kill and imprison people at random until crime stopped.
5958
"It doesn't bother me when the gameplay is shitty as long as <x>" isn't a valid argument. Moving the game to an engine where the gameplay isn't as shitty doesn't hurt any other part of the game.

And your last statement is simply flat out wrong and he explained why, oh my god, did you even read the post you're responding to, have you ever used RM2K3 for anything? You cannot detect pixel coordinates of events in RM2K3, you cannot detect if an event is currently in the process of moving between two tiles, it is not within the engine's capabilities. You fail at arguing.
author=Scalytank
Also, regarding rm2k3, i am pretty sure that you can get pixel coordinates, and check against boxes, while maintaining fast paced tile movement...

Kazesui actually wrote a big tutorial about how to do this:
http://rpgmaker.net/tutorials/498/

It would be really cool to implement into a new project, but I wouldn't dare try to add it to into an existing one, because it would require a ton of parallel processes and a complete rewrite of every event just to add the detection system... :0
LockeZ
I'd really like to get rid of LockeZ. His play style is way too unpredictable. He's always like this too. If he ran a country, he'd just kill and imprison people at random until crime stopped.
5958
@PepsiOtaku: Yes, that would be the incomprehensibly terrible picture-based method which was addressed in point 3 of the OP. It's about a hundred times more work than doing the same thing in RMXP.

@KOG: The boss battles in that video are an EXCELLENT example of how terribly RM2K3 works for this kind of thing. Link should have both dealt and received damage in multiple cases when he didn't against both bosses, and then had to kill the Molborn with spinning attacks because normal attacks were so unusable.
I think using RM2K3 to create content it wasn't intended for is really interesting as a challenge and a means to improve critical thinking, but I agree that if your goal is to express your ideas for an action game then it is impractical to be using RM2K3.
@PepsiOtaku: Lol-wut? Pixel coordinates and checking against boxes requires parallel processing!? That is completely and utterly false.

Look at this: http://spheredev.org/smforums/index.php?topic=3762.0

And look at this: http://spheredev.org/smforums/index.php?topic=10348.0

Blockman uses pixel perfect collisions for combat. JBreakout runs at over 600 fps and checks boxes against perfect circles. These are single threaded, non event driven games. If it was event driven, it has the possibility of being even faster. Parallel processing really would not be an ideal technology for hit detection. I know I'm comparing Sphere to rm2k, but both collision detection and parallel processing are conceptual and fundamental ideas. And it doesn't make sense on a conceptual level.
LockeZ
I'd really like to get rid of LockeZ. His play style is way too unpredictable. He's always like this too. If he ran a country, he'd just kill and imprison people at random until crime stopped.
5958
Uh. He meant it would require parallel processes in RM2K3. Not that there's no way to do it in any engine without parallel processes.
Huh. I did not know that.

I really don't know that much about rm. But that idea still strikes me as odd...
LockeZ
I'd really like to get rid of LockeZ. His play style is way too unpredictable. He's always like this too. If he ran a country, he'd just kill and imprison people at random until crime stopped.
5958
Well, RM2K3 events only have five possible triggers: parallel process, automatic start (which interrupts other processes rather than running parallel), touched by hero, touched by other event, or hero walks up and presses enter. Events are tile-based, so to create pixel movement, you have to not use events, but instead show pictures at coordinates and then store those coordinates in variables. But you still need at least one event to control and move the pictures and detect when they touch each-other. And that controller event has to be a parallel process, because automatic start would prevent anything from moving until the controller finished for good, and the controller never finishes for good, and the other three triggers don't make any sense.

How DOES it work in the examples you linked, if not via parallel process? I'm curious how a real action game engine actually does it.
My bad. I thought you can make something worthwhile, using the screen coordinates. I never tried this kind of thing in rm2k3. But i still wouldnt call it a chest game. Nevermind you are right.
Who cares? If you don't like them, don't play them. I doubt anybody setting out to make an action game in 2k3 thinks it will be equal to something made on another engine. You shouldn't either.

author=Jude
I think using RM2K3 to create content it wasn't intended for is really interesting as a challenge and a means to improve critical thinking
@LockeZ: Those are Sphere games, so they're in JavaScript. The source code for JBreakout at least is in the second link.

Simply, every frame it checks the ball's coordinates, and then uses manhattan distance to see if any blocks are even remotely close enough to be colliding with it. It then checks the blocks that could be close enough, by 'walking the lines' of the blocks (just looping through, one pixel at a time, over the two borders that are closest). If the distance between any of those pixels and the center of the ball is less than or equal to the size of the ball in pixels, you've collided with that block. Since there is only simple math being done, and only for a handful of blocks at most, it is really quite fast. And it's totally procedural, nothing parallel about it.

Blockman uses a more advanced system that (I think, I didn't make it) uses Sphere's surface object, and I would really have to look over the source code to see how it works. But it could be done as simply as bitwise logical AND'ing two integers, whose bits represent the pixels of two objects (or sections thereof). That would be extremely fast, as well. And not parallel, that too would be a very procedural way to do it.

In Sphere, we suffer from something akin to NIH syndrome...but it's more like IBBNIAWTFH (Invented Before, But Not In A Way That Fits Here). The engine is also relatively minimalistic. Everything short of tiling engines and basic graphics, sound, and file operations has to be built from scratch, if it wasn't inherited from JavaScript.

I kind of think that 'parallel process' actually may mean something more like 'event driven process' in that context. But I don't know.
I agree with Link_2112. Actually i am really bad ar arguements, regarding rpg maker, but i feel, that even a tile based action game can be good.
About game maker, and other engines: they all require greater knowledge, than rm2k3 (at least, if we call scripting greater than eventing, so i say different knowledge instead), and every maker above 2k3 costs money. However i really agree, that if the gameplay is meant to be precise, and " modern " by todays standard, rm2k3 is a bad choice...
author=Link_2112
Who cares? If you don't like them, don't play them. I doubt anybody setting out to make an action game in 2k3 thinks it will be equal to something made on another engine. You shouldn't either.

author=Jude
I think using RM2K3 to create content it wasn't intended for is really interesting as a challenge and a means to improve critical thinking


It's important to note that most action games for RM2K3 aren't being made for the challenge though, but because they want to make an action RPG or whatever. Advising them against using RM2K3 is a good thing.
author=FlyingJester
@PepsiOtaku: Lol-wut? Pixel coordinates and checking against boxes requires parallel processing!? That is completely and utterly false.


Yeah, as LockeZ said, I was referring to the "Parallel Process" event triggers. If you have more than 1 or 2, it starts to eat up processing power, causing lag on slower machines. But if you look at that tutorial, almost every event uses the Parallel Process trigger.
author=Link_2112
Who cares? If you don't like them, don't play them. I doubt anybody setting out to make an action game in 2k3 thinks it will be equal to something made on another engine. You shouldn't either.

author=Itaju
author=Max McGee
Forte is quite beautiful, I wonder what it looks like in the rain.

@Itaju: Very nice looking. What Engine? I really hope not 2k3...
Well, it is 2k3, why? is it bad? :D

author=Avee
author=Darken
Tile based action gameplay with rm2k3 hit detection can be good if well executed.
Fixed.

I think the fundamental concept of an action game is worth discussing and bringing up in a topic. Some people seem pretty uninformed. Most of the time, using rm2k3 to make an action game is a mistake more than a techdemo/experiment attempt. It's easy to assume event movement (basic enough for the sole purpose of talking to NPCs/opening chests) is suited for action gameplay. Because programming can be a little "invisible" when it comes to video games.

But it's okay if you don't want to talk about it, you can click back on the thread.

author=ScalyTank
About game maker, and other engines: they all require greater knowledge, than rm2k3 (at least, if we call scripting greater than eventing, so i say different knowledge instead),

But you still have to relearn rm2k3 when you start making an action game anyway. At this point you aren't even using rm2k3 when trying to make pixel movement in it, you're doing everything from scratch with completely different methods. When you make a turn based RPG in any of the RPG Makers, the program provides you with a lot of neat things. You don't have to worry about how the main character moves or interacts with things because it allows you to fill in the blanks.

It's like buying a sub urban house and then turning it into a store. You probably should have bought a downtown store instead.
is there any way to inject radio the universe directly into my bloodstream

just askin
author=LockeZ
"It doesn't bother me when the gameplay is shitty as long as <x>" isn't a valid argument. Moving the game to an engine where the gameplay isn't as shitty doesn't hurt any other part of the game.

And your last statement is simply flat out wrong and he explained why, oh my god, did you even read the post you're responding to, have you ever used RM2K3 for anything? You cannot detect pixel coordinates of events in RM2K3, you cannot detect if an event is currently in the process of moving between two tiles, it is not within the engine's capabilities. You fail at arguing.

++++++++++

I am surprised that this topic comes up shortly after Darken saw and commented on the video of my Rm2k3 Action based RPG.

Invalid YouTube URLhttp://www.youtube.com/watch?feature=player_embedded&v=o35eAsrmjjE
OMG and you wouldn't believe it when I say this game is tile based AND is a lot of fun (and I just do say this as I am the creator.
Pages: first 123 next last