Page 1 of 7 123 ... LastLast
Results 1 to 10 of 65
  1. #1
    EmuTalk Member
    Join Date
    Jan 2013
    Posts
    42
    Mentioned
    1 Post(s)

    Hey You! Pikachu - Possible HLE Implementation

    I always enjoyed Hey You! Pikachu, since the game seemed to have to many secrets and things left to discover. It's always made me a bit sad that it hasn't been emulatable due to the microphone, however, I thought through it a bit, and it seems like with a fairly small amount of effort, a usable HLE implementation could be made, that could end up even better than the original as far as Pikachu's ability to understand what you just said.

    Looking at the last and only attempt to emulate the N64 Mic(forum.pj64-emu.com/showthread.php?t=3583), I decided that it's not worth trying to do an LLE implementation, mostly because I'm a complete novice in that area.

    However, considering we have the list of phrases available in the game(pastebin.com/aG3rugAm), someone should be able to rapidly pull the matching digital responses for each phrase in the game(this may even already be listed in the ROM with the corresponding string, I couldn't manage to view the strings though). From there, a simple GUI could be made with buttons for key phrases allowing you to at least play the game.

    Once that's done, you'd use one of the open-source speech-recognition softwares (en.wikipedia.org/wiki/List_of_speech_recognition_software#Open _source_acoustic_models_and_speech_corpu s) out there to pick up on the words and automatically send the correct digital command.

    If that were in place, I think Pikachu may become more intelligent, it actually wouldn't be hard to add additional synonymous phrases that correspond to existing phrases to Pikachu's vocabulary, and you could even do translations to any language rapidly!

    Any takers?

    Also, for those interested, I put together a prototype of using a PC mic to detect the game's commands:
    Hey You, Pikachu! Mic Test

    So I went ahead and built a dictionary for Hey You! Pikachu using PocketSphinx, it works pretty well (about as well as the original game did). Needs some tweaking for commonly used words and Pokemon names (Pikachu is hit and miss), but otherwise it's actually quite good.

    Run the batch file and say any of the in-game commands into your mic to see if it properly detects it.



    I just need to look into tweaking the dictionary to be more precise for certain words and stop it from attempting to find more than one phrase used at once. Of course, still needing someone to find the VRU output for each phrase to pair it with this setup.
    Last edited by Falkoner; April 4th, 2016 at 07:50.

  2. #2
    EmuTalk Member
    Join Date
    Jan 2013
    Posts
    42
    Mentioned
    1 Post(s)
    So I'd like to know if anyone knows how to extract the string data from Hey You! Pikachu, I attempted with a few of the available tools, but I assume it's compressed in some way, and I'm a serious newb in this area.

    Basically, I'd like to see if we can get the list of recognized phrases in the game, paired with the codes the game associates with them when recieved from the mic adapter.

  3. #3
    EmuTalk Member AIO's Avatar
    Join Date
    Jun 2014
    Posts
    68
    Mentioned
    1 Post(s)
    Quote Originally Posted by Falkoner View Post
    So I'd like to know if anyone knows how to extract the string data from Hey You! Pikachu, I attempted with a few of the available tools, but I assume it's compressed in some way, and I'm a serious newb in this area.

    Basically, I'd like to see if we can get the list of recognized phrases in the game, paired with the codes the game associates with them when recieved from the mic adapter.
    You could try searching for text in RAM, if you think it's compressed.

  4. #4
    EmuTalk Member
    Join Date
    Jan 2013
    Posts
    42
    Mentioned
    1 Post(s)
    Quote Originally Posted by AIO View Post
    You could try searching for text in RAM, if you think it's compressed.
    I created a savestate in Project64 (By the way, from what I can tell, most current graphics plugins can't seem to handle the game), and then I extracted the .zip and tried searching it with a Hex Editor. I can see some strings, such as "Hey You Pikachu" backwards, but I can't seem to find the list of actionable phrases.

    Looks like the whole output is 32-bit byte-swapped, anyone know how to reverse that in a hex editor? EDIT: Nevermind, just figured it out. Now the file is much more readable.

    However, doing some searches doesn't appear to be turning up any results. I don't know if the verb list is stored in RAM, but apparently someone online was able to dump it, I'd just like a full dump (with the pokemon names as well), along with the codes associated with each phrases that would be recieved from the mic.
    Last edited by Falkoner; November 5th, 2014 at 13:02.

  5. #5
    EmuTalk Member
    Join Date
    Mar 2012
    Posts
    998
    Mentioned
    5 Post(s)
    Wait, do you really think the voice commands are stored as plain text on the ROM?

    Heck, I think I once read that the voice is interpreted inside the Voice Pak, which just sends standard inputs to the console.

  6. #6
    EmuTalk Member
    Join Date
    Jan 2013
    Posts
    42
    Mentioned
    1 Post(s)
    Quote Originally Posted by Fanatic 64 View Post
    Wait, do you really think the voice commands are stored as plain text on the ROM?

    Heck, I think I once read that the voice is interpreted inside the Voice Pak, which just sends standard inputs to the console.
    Well, based on the reasoning given at the top and bottom of this list of voice commands, it appears it must be available, unless somehow the dude had the original source code.

    Even if it isn't, one could still play through the game using Adaptoid and record the codes returned to the system for the various keywords throughout the game. However, I don't believe this is necessary due to the existence of that list.
    Last edited by Falkoner; November 7th, 2014 at 11:45.

  7. #7
    EmuTalk Member
    Join Date
    Mar 2012
    Posts
    998
    Mentioned
    5 Post(s)
    Isn't it possible that he just played trough the game and wrote down all the possible commands?

  8. #8
    EmuTalk Member
    Join Date
    Jan 2013
    Posts
    42
    Mentioned
    1 Post(s)
    Quote Originally Posted by Fanatic 64 View Post
    Isn't it possible that he just played trough the game and wrote down all the possible commands?
    Not sure if you actually looked at the list:
    Here is the full list of voice commands in Hey You Pikachu!, as they were entered into the coding, only taking slight liberties in punctuation for ease of reading. There are many repeats, and it's rather disorganized, but that is only the fault of the programmers themselves.
    (Hey You Pikachu is property of Nintendo and Ambrella, and I am not affiliated with either company. This list was transcribed from the coding of the game by Leo G., also known as "ViolentGirlfriend" in January of 2013)
    Also, further evidence:
    pikachu
    pikachu2
    pikachu3
    pikachu4
    pikachu5
    pikachu6
    pikachu7
    pikachu8
    If he were just writing it down, there wouldn't be any reason to put down Pikachu 8 times, but obviously for the code there were various ways people said Pikachu.

    Besides, even if he did, it means we'd at least have a complete list of what would need to be tested for a functional game, even if it weren't complete. Just test each phrase and grab what code the VRU returns through the Adaptoid. However, it's exactly THAT that I want to avoid, my hope is that the list was listed in something like a 2D array with the codes for each phrase listed along with the phrases, or maybe just two matching lists. Maybe a helpful first step would be for someone to record what the returned data looks like for a few of them when said into the VRU, so we can search for that in the ROM.

  9. #9
    EmuTalk Member
    Join Date
    Jan 2013
    Posts
    42
    Mentioned
    1 Post(s)
    Looking into it further, assuming we can get the system working to the point that it can pass in the correct commands programmatically, we'd generate a custom Sphinx dictionary for exactly the words recognized by Pikachu.

  10. #10
    EmuTalk Member
    Join Date
    Mar 2004
    Posts
    166
    Mentioned
    1 Post(s)
    Text strings aren't sent to the VRU to initialize it. They send an encoded format that hasn't been completely decrypted. In fact, I think the people working on it were working with the Japanese unit first since it's better documented.

    They have to send an encoded format to deal with combined sounds. In Japanese that would be vowel replacement, and in English that's vowel combinations (oo, ae, ie, a*e, etc.) and consonant combinations (th, ch, etc.). The unit does not have the logic necessary to do grammatical interpretation.

    A first step is to determine where they ripped the strings from and their correspondance to data. Most likely these are internal notes, either for a debugging or just comments compiled in. They aren't a complete list of commands either. Where's "Sega"?

Page 1 of 7 123 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •