Tutorial [TUTORIAL] Export your Pokémon animated models from 3DS to Unity Engine 3D

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,494
Trophies
0
Age
27
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,275
Country
Spain
Kinda a bad comment to say this, but, I am trying to export map/overworld animations in Ohana3ds but whenever I try to, it just does nothing when I press export. Is there any fix for this? Yes, i can see the animation in the map/overwolrd, I just cannot export it.
what binaries are you trying?
 

N4verm1nd

New Member
Newbie
Joined
Nov 21, 2021
Messages
1
Trophies
0
Age
20
XP
43
Country
France
Hello, I wrote a little code to move every Pokemons in a separate folder, ID isn't related to Pokedex IDs because there is all alternative forms, but that is better than moving everything one per one ^^


To create necessary files :
Create a folder where you want
Create 2 .bat files, copy/paste this (you can replace the "pkmnID_" that is just the name):

one with:
Code:
@echo off
setlocal enableDelayedExpansion
FOR /l %%N in (0,1,999) do (
    set "NUM=00%%N"
    set "DIRNAME=pkmnID_!NUM:~-3!"
    md !DIRNAME!
)

and the second with:
Code:
@echo off
setlocal enableDelayedExpansion
FOR /l %%N in (1000,1,1173) do (
    set "NUM=00%%N"
    set "DIRNAME=pkmnID_!NUM:~-4!"
    md !DIRNAME!
)

Launch these, and it will create needed folders.

Now, turn on Visual Studio and creates a little project in C#, and paste this (don't erase all of your script) :
C#:
class Program
    {
        static void Main(string[] args)
        {
            int arrayNumber = 1;
            int decCounter = 0;
            string fileName = "undefined";
            int pkmnID = 1;

            while (pkmnID < 9999)
            {
                if (arrayNumber < 10)
                {
                    fileName = "dec_0000" + arrayNumber + ".bin";
                }
                else if (arrayNumber > 9 && arrayNumber < 100)
                {
                    fileName = "dec_000" + arrayNumber + ".bin";
                }
                else if (arrayNumber > 99 && arrayNumber < 1000)
                {
                    fileName = "dec_00" + arrayNumber + ".bin";
                }
                else if (arrayNumber > 999 && arrayNumber < 10000)
                {
                    fileName = "dec_0" + arrayNumber + ".bin";
                }
                else if (arrayNumber > 9999 && arrayNumber < 100000)
                {
                    fileName = "dec_" + arrayNumber + ".bin";
                }

                string sourcePath = @"YOURPATHHERE_justalittletest" + fileName;
                string targetPath = @$"YOURPATHHERE_justanothertest";

                if (pkmnID < 10)
                {
                    targetPath = @$"YOURPATHHERE_pkmnID_00" + pkmnID + "/" + fileName;
                }
                else if (pkmnID > 9 && pkmnID < 100)
                {
                    targetPath = @$"YOURPATHHERE_pkmnID_0" + pkmnID + "/" + fileName;
                }
                else if (pkmnID > 99 && pkmnID < 1000)
                {
                    targetPath = @$"YOURPATHHERE_pkmnID_" + pkmnID + "/" + fileName;
                }
                else if (pkmnID > 999 && pkmnID < 10000)
                {
                    targetPath = @$"YOURPATHHERE_pkmnID_" + pkmnID + "/" + fileName;
                }

                if (!fileName.Equals("undefined"))
                {
                    if (System.IO.File.Exists(sourcePath))
                    {
                        System.IO.File.Move(sourcePath, targetPath, true);
                        Console.WriteLine($"Fichier {sourcePath} déplacé dans {targetPath}");
                    }
                    else
                    {
                        Console.WriteLine($"Un fichier (n°{sourcePath.ToString()} n'a pas été trouvé ou est déjà déplacé!");
                    }

                    arrayNumber++;
                    decCounter++;

                    if (decCounter == 9)
                    {
                        pkmnID++;
                        decCounter = 0;
                    }
                }
                else
                {
                    Console.WriteLine("fileName = undefined ;_;");
                }
            }

            Console.WriteLine("Press any key to exit.");
            Console.ReadKey();
        }
    }

Just be aware to not import ALL in Unity, do like 10 per 10 you can import more if you want but it will be long ^^
I wish it can be useful to someone ^^
 

GhwXin

New Member
Newbie
Joined
Feb 13, 2022
Messages
1
Trophies
0
Age
27
Location
China
XP
17
Country
China
Hello, I learned a lot from reading your article. I want to reproduce the skill effects of Pokémon in another game. Do you know the file path of the relevant unpacking effects?
 

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,494
Trophies
0
Age
27
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,275
Country
Spain
Hello, I learned a lot from reading your article. I want to reproduce the skill effects of Pokémon in another game. Do you know the file path of the relevant unpacking effects?
The particle systems are made in-engine, so you need to remake them from scratch in the game engine you use. Textures can be extracted tho (dunno the correct binaries for them).
 

gabec

New Member
Newbie
Joined
Feb 8, 2022
Messages
4
Trophies
0
Age
31
Location
no
XP
47
Country
United States
does anyone know how to fix mothims texture?
 

Attachments

  • image_2022-02-14_155712.png
    image_2022-02-14_155712.png
    119.4 KB · Views: 16

Manurocker95

Game Developer & Pokémon Master
OP
Member
Joined
May 29, 2016
Messages
1,494
Trophies
0
Age
27
Location
Madrid
Website
manuelrodriguezmatesanz.com
XP
2,275
Country
Spain
no, i don't have photoshop so i cant, so i used the direct method, same result
If you read the instructions, you can see you need to mirror the texture either in unity or externally. As far as I can see you are using an standard material, so you need to set the tiling to 2,1 with the wrap method to mirror
 

gabec

New Member
Newbie
Joined
Feb 8, 2022
Messages
4
Trophies
0
Age
31
Location
no
XP
47
Country
United States
If you read the instructions, you can see you need to mirror the texture either in unity or externally. As far as I can see you are using an standard material, so you need to set the tiling to 2,1 with the wrap method to mirror
ah ok, thanks!
 

Bonfyre

Member
Newcomer
Joined
Feb 19, 2022
Messages
7
Trophies
0
Age
31
Location
Virginia
XP
15
Country
United States
Hello guys !

I'm almost done with Gastly (missing shadows / wrong text mask animation):

giphy.gif


I did a very confuse particle system but it work :P

First you need to make a shader : flipbook (with gastly's sprite sheet) + stencil, like the one below.
(for the stencil you can use the fire shader i made as reference).

flipbook.png


When the flipbook is ready, add a particle system to the gastly's FirecoreA and set particle's shape like this :
(Skinned Mesh Renderer : FirecoreA (its the small ball)

shapeparticle.png

Then add the flip book shader to your particle.


To add Texture and colors to the smoke effect, you have to add a stencil masked shader to the big animated ball that come with gastly like this :
(You can use this part as exemple for the stencil effect but the texture anim is not finished).

Stencil-Gastly.md.png


The shader is almost the same as charmander's flame, you'll only need to set the references to your needs and add the head in front place in the stencil (except the iris).
Hey! I'm currently working on Gastly, I was wondering if you'd be able to reupload the screenshots to your tutorial? That would be amazing! It looks fantastic. Thanks
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • AliceCE @ AliceCE:
    eeeeyikes
    Gift
  • AliceCE @ AliceCE:
    on the flip side, i was able to give the dingus machine that i nearly screwed the cpu up on a solid state drive
    Gift
  • AliceCE @ AliceCE:
    and i cleverly got the idea to move the pagefile to it
    Gift
  • AliceCE @ AliceCE:
    i think my ram's slower than that solid state drive, jesus christ
    Gift
  • AliceCE @ AliceCE:
    it seems like the pc chugs, then gets exponentially faster after what i can only assume is the pc running out of physsey
    ram
    Gift
  • AliceCE @ AliceCE:
    whereas before it just chugged no matter what
    Gift
  • AliceCE @ AliceCE:
    slow pagefile, slow ram, now the pagefile's leaving poor phrammy in the dust
    Gift
  • AliceCE @ AliceCE:
    and all this on a dingus windows 7 pc with no graphics card, of all things
    Gift
  • AliceCE @ AliceCE:
    an optiplex 755 MT
    Gift
  • DinohScene @ DinohScene:
    I deal with bent CPU pins on a almost daily basis...
    Gift
  • Digitalcat @ Digitalcat:
    bent cpu pins are my fav, love unbending them and then bending even more by accident.
    Gift
  • Digitalcat @ Digitalcat:
    Hate how they are getting thinner and thinner.
    Gift
  • Veho @ Veho:
    Didn't they invent those nubs and contacts a while ago so we wouldn't have to deal with a million pins when plugging in a CPU?
    Gift
  • Veho @ Veho:
    What happened to that?
    Gift
  • DinohScene @ DinohScene:
    I think Intel still uses LGA?
    Gift
  • DinohScene @ DinohScene:
    not to well known with the newer CPUs
    Gift
  • AliceCE @ AliceCE:
    optiplicks
    Gift
  • Psionic Roshambo @ Psionic Roshambo:
    New AMD is still on pins Intel went LGA but rumor is they are swapping with AMD going LGA and Intel maybe going back to pins
    Gift
  • AncientBoi @ AncientBoi:
    [turns it all into USB-B] Problem Fixed
    Gift
  • AliceCE @ AliceCE:
    CPU but awesome
    Gift
  • AncientBoi @ AncientBoi:
    CPU's? But I'm still working on EMP's
    Gift
  • Veho @ Veho:
    C U P?
    Gift
  • AncientBoi @ AncientBoi:
    A CUP? with no COFFEE in it? BAD. smh
    Gift
  • Veho @ Veho:
    Seee Yoooou Peeee.
    Gift
  • AncientBoi @ AncientBoi:
    Oh hell no! I still like my privacy in the restroom! :angry:
    Gift
    AncientBoi @ AncientBoi: Oh hell no! I still like my privacy in the restroom! :angry: