Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
 Open World FPS without FPLE
#1
and maybe.... without scripts either?

Ready to take the dungeon crawl outside?

Okay, so, we're mostly familiar with FPLE by MCG, a script and DLL package that allows you to have a First Person Dungeon Crawl. I've had a chance to take a look at it, as well as another 3d dungeon script used for VXA, and I think I may have a solution that if works would allow for a psuedo 3d experience.

We've seen the mode 7 where sprites are shown, but they don't turn, or of they do turn they don't apear to have any substance, except for being a 2d plane. What I think I MAY be able to is set up variable X and Y for each 'event' and the Player X and Y... Depending on if the event is in the players 'line of sight' it can appear on the screen as a picture, Since RMXP has a limit of 50 pictures, it makes it quite easy to setup a good enough FOV for all the pictures I'd want to display.

[Image: 3dopenworld.png]
7 in the back row, with the centermost having a higher z-index 1,3,5,7,6,4,2
7 in the next to the back row, with the centermost having a higher z-index 8,10,12,14,13,11,9
7 more in the next row, with the centermost having z-index priority 15,17,19,21,20,18,16
5 more in the next row, again, centermost, being pictures 22,24,26,25,23
5 in the next, pictures like this, 27,29,31,30,28
5 in the next, pictures like this, 32,34,36,35,33
3 in the next, pictures like this, 37,39,38
3 in the next, pictures like this, 40,42,41
3 in the next, pictures like this, 43,45,44
and then the foreground most picture, lucky picture 46.

Ironically, if you're going for a Drakken 3rd person style play like...
[Image: Drakkhen003.png]

Then you have the perfect opportunity for your 4 party team to have pictures 47, 48, 49, and 50 be your partymembers.

Now, in each event that you want to be more than just the terrain (hills, trees, whatever, you simply have to have it check your direction(orientation to north,south,east, or west) and the X and Y of the event, as well as the X and Y of the player...


This way if on the map the event is say, 20x, 15y, and the player is now at 24x and 17y... The event can cehck for the orientation...
If the player is facing west... then the player is four spaces back, and two spaces to the 'left' of the event. this means that the event would JUST come into view at position 33. This is where it gets good, and may require keen perspective drawing skills or a 3d program.

Using the same gridpattern in a 3d rendering program, you can have the images display at different points of your 'field of view' render then, and save them... For instance, say I have a windmill... animated or not, I might create 184 pictures of the windmill, showing it at diffferent perspectives and distances, and save them as something like windmill01-e.png, windmill01-w.png, and so on and so forth.... Now, you will end up with a lot of images, depending on the diversity of the items you want to have in your game, but each rendered item if placed in the right coordinates for the grid space, won't take up that much space in the broad range of games of today.



[Image: 3d-fps-testfinal.png]

In addition, now you have a pseudo-3d openworld that can literally be any size, and if you don't think you can have 100 events on your map, you can chain maps together with a 7-9 tile border that matches up, so that it looks like a seemless transition from one map to the next. (If your map is already going to be crowded like a forest, you can also determine a firest tile as the default picture tile, and CUT into it with events, or even set up a grid of variables, say 400, with every item you need, so that you don't even need to USE EVENTS!

There are a dozen or more different ways to implement this, but the main thing to remember is that it doesn't have to BE 3d to look 3d...

Now, in game, you can change how your arrow keys work by having left and right instead ROTATE the world view, and put you in the orientation of north south east and west, and thus, go through on the events and change things to represent the fact that each 'event' is now being viewed from the south side.


This would have been perfected in implementation in MCG's FPLE except events never could be higher than where the ceiling would be, and the rotation make this billboard effect look crude and unreliable. Plus in FPLE, the pictures never timed correctly. This will allow you to quickly change all the pictures quickly, change the views, and have a view you could be proud of. On top of that, using seamless billboards, you can create longrunning walls, castles that go on forever, geographic features, even your floor textures can be supertiled, with more than the FPLE maximum of 8 floor textures. There really is no limit.
[Image: yy7iKKb.png]

ITCH: jayray.itch.io
Currently working on Goblin Gulch (MV)
Currently working on JayVinci Resurrection
Currently working on Bakin ABS (BAKIN)
Reply }
#2
I am almost 100% sure this is how that 3D Dungeon demo you posted in the other thread works. It probably uses Sprites instead of Game_Pictures though.
Reply }
#3
yeah, I'm sure it is as well, the only problem is that the sprites are the same size no matter how far from the foreground they are, and well, they just don't look right, perspectivewise...
[Image: yy7iKKb.png]

ITCH: jayray.itch.io
Currently working on Goblin Gulch (MV)
Currently working on JayVinci Resurrection
Currently working on Bakin ABS (BAKIN)
Reply }
#4
If you're going to go this far to make a pseudo 3D environment isn't your best bet just to use some other software that would cope with it better?
Reply }
#5
RPG Maker (especally XVA) can handle dynamic realtime resizing and tinting of arbitrary sprites. If the goal is to make a 3D world, one might be better off using Unity or similar (though an RPG engine would need to be tacked on). If the goal is to simulate those old first person dungeon games, then this is a fine solution.

Here is a basic algorithm for that would implement this behavior overtop of the mapping system that already exists.
1. get the tileid of X number of tiles out from the player, only getting the ones in a V-shape out from the player sprite's point of view.
2. map the tileid to an image.
3. draw the image at a scale and position based on the tile's position relative to the player.
4. repeat whenever the player moves.
Reply }
#6
The way I look at it, we have a preconceived limitation towards RPGMaker XP on up because the default scripts are geared towards a particular game style... That style being a top-down SNES RPG game. It takes extensive work to create a whole new method to render the display.

While most people looked into Mewstreus's original Mode07 from 2006, and continued looking for various Mode7-like 3D angled systems, there had been little effort towards front view perspective systems. Insofar as actual first person systems, there was only one actual system prior to MGC's FPLE system... that system being BigKevSexyMan's First Person RPG from August 2006.

[Image: Screenshot2.png] [Image: Screenshot4.png]

No one can say that the FPLE isn't a major upgrade from BKSM's (BigKevSexyMan's) original system. After all, BKSM's First Person RPG was clumsy looking, had issues where you could see through some blocks, didn't have actual 3D perspectives, and character sprites didn't properly align in the viewport as you would have wished. Most issues were rectified by MGC's system (though you may want to re-think the door charctersets).

I have never been keen on needing additional .dll files in my game, even THOUGH the FPLE uses it to render the graphics in a more fluid manner. But I think that it may be possible to render perspective-based walls through actual ruby code given the opportunity. It is just unfortunate that no one considered following up BKSM's system with any enhancements or corrections since its initial release eight years ago.

That's an invitation, guys.....
Up is down, left is right and sideways is straight ahead. - Cord "Circle of Iron", 1978 (written by Bruce Lee and James Coburn... really...)
[Image: QrnbKlx.jpg]
[Image: sGz1ErF.png] [Image: liM4ikn.png] [Image: fdzKgZA.png] [Image: sj0H81z.png]
[Image: QL7oRau.png] [Image: uSqjY09.png] [Image: GAA3qE9.png] [Image: 2Hmnx1G.png] [Image: BwtNdKw.png%5B]
Above are clickable links

Reply }
#7
THis CAN be done! WHo wants to assist me in creating Perspective cubes to test this theory?
[Image: yy7iKKb.png]

ITCH: jayray.itch.io
Currently working on Goblin Gulch (MV)
Currently working on JayVinci Resurrection
Currently working on Bakin ABS (BAKIN)
Reply }
#8
basically the idea would sorta go like this, and there may be a way to incorporate for RMXP based on tileID instead of TILE TERRAIN ID... but a perspective cube would basically be a pre-configured 3d-rendered cube, for the testing of angles of items in that cube. In this method by using enough cube, and coordinating their placement due to the X or y of the player, you can create multi-level 2d psuedo billboarded First person openess, based on (rudamentally) the player's "position" "direction" and "level" in the map.
[Image: yy7iKKb.png]

ITCH: jayray.itch.io
Currently working on Goblin Gulch (MV)
Currently working on JayVinci Resurrection
Currently working on Bakin ABS (BAKIN)
Reply }


Possibly Related Threads…
Thread Author Replies Views Last Post
   HEY HEY JAY RAY #1: World Maps JayRay 4 7,541 01-26-2015, 11:21 PM
Last Post: Taylor
   World Maps bacon 18 23,131 01-07-2015, 04:57 AM
Last Post: JayRay
   FPLE is awesome! (Old attempt at 1st person perspective) PK8 1 5,937 07-07-2010, 09:18 AM
Last Post: MGC



Users browsing this thread: