• Welcome to Final Fantasy Hacktics. Please login or sign up.
 
November 10, 2024, 02:22:20 pm

News:

Use of ePSXe before 2.0 is highly discouraged. Mednafen, RetroArch, and Duckstation are recommended for playing/testing, pSX is recommended for debugging.


Map exploration...

Started by Satchmo III, March 04, 2018, 06:16:18 pm

Satchmo III

Hail hackticians.

This thread will primarily document my exploration of and work with FFT's maps. I've been enamored with the aesthetic of the game ever since my first play-through as a middle-schooler over the course of two or three rentals from the local Hollywood Video back in the 90s. More than 20 years on, I think it's awesome that there's still a fan-base and that there are tools for people to play with the the game's assets and breath new life into it.

I dabble very poorly with programming (but I want to learn) and I'm decent at 3D modeling in Blender. About a year ago (near the end of 2016) after replaying FFT via the iOS port (which I recommend) I decided to try my hand at modeling the simple geometry of the iconic Orbonne Monastery. I had a vague notion that I might use pepakura or 3D printing to bring it to RL...that was the beginning of this ongoing project. Since then I've worked the form a couple of ways and learned a bit of programming and more about modeling.

I share some high-lights below for your interest. Please let me know what you think or if you have any questions, I'd like to help others however I can. I've done a pretty thorough review of the forum so thank you to everyone who has contributed to the understanding of the game maps (especially gomtuu). Most of the traffic concerning modding maps occurred between 2008 and 2012 so I hope there's still some interest here.
  • Modding version: Other/Unknown

Satchmo III

March 04, 2018, 06:17:19 pm #1 Last Edit: March 05, 2018, 04:50:48 pm by Satchmo III
My journey began on-line. At the Caves of Narshe (https://www.cavesofnarshe.com/fft/maps/mapsingle.php?mapid=056) I found images of the four directions of the Orbonne Monastery map. I used a PDF markup program to scale the geometry and produced a simple mesh. I later learned the true dimensions of the mesh's polygons but when I began it was only important for the measurements to be accurate relative to one another (I figured a basic square polygon to be 1x1 units and then scaled the height of a basic step to be 0.44 units). Below is an overlay of my mesh on top of the image reference that I scaled.



I had some perspective trouble with the main roof and didn't know how to address the air terminal at its peak, but overall I was happy with the model. I enjoyed making it and wanted to make more so I went back on-line to seek out more references images. This brought me to the map resource at this very forum (http://ffhacktics.com/maps.php). I was pleased as punch to find the four directions (along with an overhead view) of all the game's maps. Since the overhead view was a straight-on perspective of the pixels, it started me thinking about actually texturing the models, but that wouldn't come until later. I used the four direction images and my scaling method to produce Magic City Gariland along with 17 more maps. Below is Gariland along with all the others (ignore the textures in the second image for now, that comes a bit later in this story).





Working through these ~20 models was sometimes a struggle. Parts of the model in the four direction images could be obscured from view or the texture material made it difficult to understand the polygon geometry (this was especially the case with the white snow at Fort Zeakden). This being the case I searched through the ffhacktics forum to see what more I could glean about the maps. This ultimately brought me to gomtuu's Ganesha (0.60) program (http://ffhacktics.com/wiki/Tools). Below is a screen-shot of Ganesha's interface.



In Ganesha, you can select any polygon on an actual game model and see the three or four coordinates of that polygon. This allowed me to understand the true dimensions of the basic square and step (28 and 12 units) and gave me info to fix any errors with my mesh geometry. Ganesha also shows a grayscale version of the actual texture image along with UV coordinates for each polygon when selected. This again made me think of texturing my models but I didn't understand the why the texture was in grayscale.
  • Modding version: Other/Unknown

Satchmo III

March 04, 2018, 06:18:00 pm #2 Last Edit: March 05, 2018, 04:51:35 pm by Satchmo III
Since I now had accurate model meshes the next step in the progression was figuring out the textures. Ganesha allows you to export a map's texture image but only in grayscale so it wasn't terribly useful.

At the time I started to read gomtuu's excellent breakdown of the game's map files (http://ffhacktics.com/wiki/Maps) to understand more about what's there, but it was mostly greek to me (again, I want to learn more about programming but it's difficult for me to process code and hex and whatnot). I came to understand in principal that the game uses 16 different 16 color palettes that are applied to differing polygons of the map when rendered in-game. I don't understand exactly how this works but I was able to get a peak behind the curtain with gomtuu's map2GL map viewer program.

map2GL allows you to view the maps and export colored texture images but those images are with the 16 distinct color palettes that the game draws from to apply to the model (and not one image containing the appropriate palettes just where needed). Fortunately, the map2GL interface allows you to view each of the 16 texture image palettes with and without the used polygons drawn over them. With this, I took screen-shots of each texture image palette (with and without the used polygons drawn on), used Photoshop to layer all of the colored palette images, and cut out the non-used parts of each image...this resulted in one layered image (which I output to a PNG file) with the appropriate colors from all palettes in their proper places. The process is a bit time consuming but workable. Below is a screen-shot of what Gariland's layered image looked like in Photoshop. I'm sure a similar process could be carried out in GIMP or other image editing software which utilizes layers.



I won't go into great depth on the operation of Blender (unless someone has a question) but having a usable texture image is just a first step to texturing a model. The next step is basically to tell Blender how to lay the 3D polygon faces on the 2D texture image. Depending on the map and texture image this could be straightforward but where not I used Ganesha as a reference (remember Ganesha's interface shows the actual 2D UV coordinates for each polygon). With this process (and learning how to use alpha channels in Blender) I was able to texture my meshes. Below is Dorter Trade City in Blender. I textured six or seven of the maps I had produced (see earlier image).


  • Modding version: Other/Unknown

Satchmo III


Satisfied with what I had accomplished in the computer I began exploring what I could do with the models. I 3D printed a small Orbonne Monastery as a gift for a friend. This was cool, but in all honesty it looked a little too simple.



I considered how I might utilize the pixel data on a printed model. I thought I'd print out the texture image on a sticker sheet and apply stickers to a 3D print. I never tried that but since I'm pretty familiar with the pepakura (papercraft) process I took that approach. I exported an OBJ with MTL file from Blender and opened it with Pepakura Designer. Pepakura Designer allows you to unwrap a 3D model, print the flat unwrapped parts onto card-stock paper, and then cut out and glue together the parts to assemble back into a (now physical) 3D object. This worked pretty well for Magic City Gariland. I haven't followed this form for any other map.



Going back to the computer I thought I'd extend the FFT aesthetic to another good game, Metal Gear Solid. Just as the opening Orbonne is forever linked to FFT in my memory, the opening heliport setting is tied to MGS. I made the following with some very very basic textures (this was my first attempt at producing something like this). Some day I'll revisit/improve it and maybe make more.



Probably the only hacking I've done thus far came next. I cobbled together some python code to make a web-crawler to download all of the four direction reference images from ffhacktics. I think web-crawlers may be generally frowned upon by server managers but I figured hacking ffhacktics would be acceptable and appropriate. I wanted to have all of these references if I chose to make more models in the future.

  • Modding version: Other/Unknown

Satchmo III

A number of months passed before I'd revisit the project. Thinking back to that first 3D print and its simplistic look, this past January while I was recovering from some surgery I began detailing out the Orbonne Monastery model. At first I tried to make it from only one mesh which became complicated, when I abandoned that ideal and started using multiple objects it got easier.



I've tried to maintain the relatively simple pixel aesthetic of the texture images while carving/adding the detail. Rasputin Lagasca made a really great detailed Orbonne Monastery model/animation (https://vimeo.com/97158350). Something like this is out of the scope of my abilities currently.

I finished up Orbonne, moved on to Gariland, and finished with Lionel Castle. I got fancy with the camera in Blender for Lionel Castle.







Printing these out yielded pretty good results in my opinion. The last photo below shows all three detailed prints along with some other simple prints (can you guess which maps they are?).















And that is where the project rests as of today. Thinking about next steps, these are some things I may explore in the future.

1. Paint the detailed 3D prints.
2. Produce larger detailed 3D prints (print in sections and later assemble).
3. Develop 3D character models. Though since the pixel sprites are so awesome to begin with I'm not sure I want to mess with this.
4. Create other custom maps.
5. Investigate code/programming opportunities. I may need some assistance with this.
6. Explore other Ivalice provinces (Vagrant Story and FFXII).

Thanks again to those that are interested in the stage maps and thank you to those that are interested in this project. Please let me know if you have any thoughts or questions.
  • Modding version: Other/Unknown

Xifanie

Holy cow that is impressive!
I can't even imagine how many hours you've put into that project.

I don't really have anything else to add... good job!
  • Modding version: PSX
Love what you're seeing? https://supportus.ffhacktics.com/ 💜 it's really appreciated

Anything is possible as long as it is within the hardware's limits. (ie. disc space, RAM, Video RAM, processor, etc.)
<R999> My target market is not FFT mod players
<Raijinili> remember that? it was awful

Angel

Well now I know what we need on our coffee table. Freaking amazing. Thank you for sharing!
  • Modding version: PSX
* Angel should quit being a lazy bitch
<@Elric> I agree to that as well

nyanyame nyanyajuu nyanyado no nyarabide nyakunyaku inyanyaku nyanyahan nyanyadai nyannyaku nyarabete nyaganyagame
At the end of the day, are we not all trapped inside lemons?

3lric

Great job man. Very impressive. I did several clay versions of FFT maps many years ago and then painted them but those were nothing compared to this. Again, well done.
  • Modding version: PSX

Cheetah

Wow this stuff is incredible. I'm very impressed. I have always loved the map esthetic and have done some custom map work and even some simple Blender recreations, but those 3D prints are beyond awesome. Frankly I want them, would you be willing to share the files and printing instructions?
Current Projects:

Heisho

I need that Orbonne print in my life.
Awesome job man.
  • Modding version: PSX
Grrr, arwg, hiss, and some other zombie noises...
  • Discord username: Heisho

Rfh

These awesome projects make this loved game never die. :)
  • Modding version: PSX
  • Discord username: rfh

Satchmo III

March 29, 2018, 10:37:56 pm #11 Last Edit: March 30, 2018, 07:01:36 am by Satchmo III
Thanks everyone for your comments, I really appreciate them. I've been focused on other things lately and haven't done too much with this project but I wanted to respond and share a bit.

Xifanie, I'm able to imagine the number of hours I've spent on this stuff but I'd probably need a calculator if I tried to add them all up at this point.

Angel, the prints do make for neat little items to have laying around. With a group of them they're kind of like those little towns or villages some people put up at christmas time.

Elric, I'd be interested in seeing your clay models if you still have them about. I bought some clay a few years ago but was only able to form some rough blobs.

Cheetah, see below.

Heisho, see below.

Rfh, it's a good point. FFT is such a gem, it's lovely that there are places like this site where people are interested in extending its lifespan.

I made some simplifications to the Orbonne model to make it a bit easier to print and I'd like to share it with the community. There's a link below to my OneDrive account to download the STL file. If you go to it, OneDrive provides a navigable 3D preview of it in your web browser (I thought this was a cool discovery). Edit: Hmm...after checking it out I think the preview only works if you're signed into OneDrive (or maybe it only works for the owner of the file).

https://1drv.ms/u/s!AkPPZafpaLOJgYAoN9r4Ejpg2tccbQ

As far as print instructions I can only describe a little of what I did. I made the Orbonne print with no supports, a 0.28 mm layer height, and 20% infill. It started out with ABS plastic, but was switched to HIPS about 2/3 of the way through when my ABS ran out (if you look at the photos you can see the slight variation in gray colors at the arch above the front door).

I'd love to make and share some prints for a fair price (or trade) if anyone is interested. I'm not trying to just hawk some wares...it'd be really cool to sell something I made to someone who would appreciate it. Please let me know.

May you find victory in battle, hackticians.
  • Modding version: Other/Unknown

Satchmo III

I mentioned previously that I'm a fan of Metal Gear Solid. I really dig the character Olga (aka Mr. X) from the second game and love her cyborg ninja getup. I modeled the helmet about four years ago based on some photos I took off my TV when playing the game and spent a bunch of time searching online to see if I could acquire the actual model (helmet and suit) to compare to my work. I found some good leads, but all associated links were old and dead. I shelved the project until recently (after modeling the FFT maps I wanted to expand the practice). Kojima (or Konami) had put out a PS2 "game" that contained a sort of making of for MGS2 which I was able to pick up cheaply from eBay. It had character models you could freely rotate and some concept sketches that I used for reference which helped immensely to check the scaling on the helmet and make the suit.

All that is to say...here is a cyborg ninja chilling alongside the canals of Magic City Garliand.



I'd like to make a FFT sprite for her, and need to do some research here to figure out how. In the meantime, I'm exploring CG animation with Blender, and on Friday I put a rig on the Mr. X model and made a walk animation. It's not unlike the FFT's sprite animation battle walk (which gives me an idea for a future project branch).



Although I'd like to make a character sprite someday, I was able to make a FFT style portrait for her yesterday. I read somewhere here that the game limits the portrait (and sprite) color palette to 16 so I followed that rule and sampled colors off of existing character portraits. I assumed the background is one of the 16, but if it's not I could add one more color. The color limitation, and more so the pixel limitation, really forces you to make hard choices. I tweaked it a bunch and could probably keep making tweaks but I think it's passable now. Let me know if you have any constructive criticism. I'm going to use it for my avatar, but below is a copy in case I change it later.

  • Modding version: Other/Unknown

Twinees

Quote from: Satchmo III
I read somewhere here that the game limits the portrait (and sprite) color palette to 16 so I followed that rule and sampled colors off of existing character portraits.

Perfect! That's definitely the best way to go, and it looks like you've chosen colours that match well too. Rule of thumb is that 99.5% of the colours you will need already exist in game and I'm glad you've adhered to that.

Quote from: Satchmo III
I assumed the background is one of the 16, but if it's not I could add one more color.

Correct, the background counts as one of the 16.

I'd like to offer some criticism and hopefully it helps. I think the helmet needs a little more shape and definition at points in terms of metal plating (the general outline of the helmet is really well shaped though). The concept art I looked up had dark lines like you've used towards the back of the helmet continue on the front too, so I think that would be a good way to start defining the shape of the metal more. The neck is pretty thick, it could probably be at least a tad smaller.
Would you like me to spend 10-15 mins doing some quick edits of the portrait to help you out? I'd rather ask permission first instead of simply going ahead and messing around with your art work :P
  • Modding version: PSX

Satchmo III

I appreciate the feedback Twinees! If you'd like to take a crack at making some improvements I welcome your experience and am interested in seeing your take. Thanks in advance.

My intent was for the light to be more or less directly in front/above the face. The shaping of the visor is a subtle thing and I actually started with more defined outlines but cut it back to try to let the shadow tell the story. I've been thinking the visor could wrap around more as it goes from front to back (using less straight lines). It's my first concentrated effort to produce pixel art, it's so simple yet so complex at the same time (kind of math kind of art) which makes it fun.
  • Modding version: Other/Unknown

Twinees

Great, hope this helps convey a little bit about what I meant in my post. I didn't finish off a lot of it, left it rough in places, like the back of the neck and top of the head. The blue shoulder strap thing could probably be improved too as the last thing. Should be 16 colours still too. I'm keen to see whether you design a sprite to go along with it!




Quote from: Satchmo III
My intent was for the light to be more or less directly in front/above the face.

Yep, that's how it should be :)

Also I forgot to mention how much I like those 3D printed maps! They look really fucking cool. Great job. I'm really interested to see what else you work on! If you need any more help regarding pixel art things, let me know.
  • Modding version: PSX

Satchmo III

Thanks for compliment on the 3D prints. I'm planning to paint them (at least Orbonne), and think then they'll really pop.

And thanks for the portrait workup. I can definitely see the shape more, especially with the visor, and I really like the shadowing at the front of the neck. I'm going to try to incorporate some of your ideas into a new version.

Quote from: Twinees on April 02, 2018, 12:35:17 pmIf you need any more help regarding pixel art things, let me know.

I appreciate that. Have you ever thought about creating pixel art for custom maps? It seems like it'd be a major undertaking...but it'd be super cool to marry the right 3D map with the right texture art. Maybe we could collaborate sometime.

Below is my first (and incomplete) draft of a sprite for Olga (I should call her Mr. X or some iteration of cyborg ninja...but I like Olga) including front walk cycle GIF and PNG of the sprite sheet (PNG format for incomplete sheets per a FFH banner notification I saw). There's a bunch that can be improved but I think it's at an okay resting point before making revisions. If you, Twinees, or anyone else has constructive criticism or suggestions then I'm all ears. As always, thank you everyone for your interest and take care.



  • Modding version: Other/Unknown

Twinees

I don't have much time so I can't properly reply at the moment. But first thing is that sprites use a different 16 colour palette in relation to the portrait. The sprites also use quite different colours, so start from there :)
  • Modding version: PSX

Valkirst

Well Satchmo, what you do is on a whole other level! Have you been working on your sprite more? You have a great artistic eye, I will help with what I can but, I imagine by now you have already put more work into your sprite. Twinees is the man though!
  • Modding version: PSX
Completed Sprites
  • Discord username: Valkirst

Satchmo III

May 27, 2018, 01:34:20 am #19 Last Edit: June 23, 2019, 06:41:23 pm by Satchmo III
Thanks Twinees, I did not understand that the sprites use different palettes than the portraits. It makes sense, just didn't occur to me.

I haven't worked very much more on the sprite, Valkirst. It's definitely something I'll return to.

I painted the Orbonne model a couple weeks back. The last thing I think I painted was a popsicle house a number of years ago...my skills are not great and there are things that need to be touched up. When I was painting I didn't think things were coming out very well, but after the acrylic paint dried out the colors looked better. I managed to break off the air terminal at the top of the roof (who could see that coming?) and subsequently managed to lose it somehow...I'll have to print a replacement and call a roofer to get it re-installed.

Below are some pictures of the rough paint. Take care everyone.


  • Modding version: Other/Unknown