News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: [Release] SNES & NES "Wanderbar" sidebar + plugin system  (Read 5631 times)

Tomato

  • Sr. Member
  • ****
  • Posts: 330
    • View Profile
    • Legends of Localization
[Release] SNES & NES "Wanderbar" sidebar + plugin system
« on: October 15, 2018, 05:12:25 pm »
A while back I took Snes9X and a web browser and glued them together to to create a thing I called the "Wanderbar". Then I did the same with an NES emulator. These were originally just for my personal projects, but they wound up kind of popular and they have a bunch of cool potential uses, so I released them to the public:

Download (and source code) page: http://tomato.fobby.net/wanderbar/
Project details + description of all 11 plugins https://legendsoflocalization.com/wanderbar/

Example screenshots:

https://legendsoflocalization.com/wp-content/uploads/2018/10/wanderbar.jpg

It's basically a glorified Lua script thingy, but the fact that everything is displayed via HTML means you can also use HTML5, CSS3, Javascripts, external APIs, local storage, etc. with ease. I haven't written up documentation on how the plugins work, but I've already seen an EarthBound script comparison plugin and a Zelda 2 automap plugin doing their thing:





Anyway, I thought I'd share this stuff on RHDN in case anyone wants to play around with it or improve upon it or whatever else. It's definitely been a lot of fun to work on and opens up all kinds of neat project opportunities.

ThegreatBen

  • Hero Member
  • *****
  • Posts: 726
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #1 on: October 15, 2018, 06:35:11 pm »
Cool

andrewclunn

  • Sr. Member
  • ****
  • Posts: 282
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #2 on: October 16, 2018, 08:56:08 am »
I'm interested to see if that Zelda 2 automapper works with rom randomizers.

Choppasmith

  • Full Member
  • ***
  • Posts: 178
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #3 on: October 16, 2018, 04:05:14 pm »
Fascinating stuff. The potential for this is really exciting! I, for one, would love to finally give FFVI-T a go that way!

mziab

  • Sr. Member
  • ****
  • Posts: 313
    • View Profile
    • mteam
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #4 on: October 16, 2018, 05:15:47 pm »
A while back I took Snes9X and a web browser and glued them together to to create a thing I called the "Wanderbar". Then I did the same with an NES emulator. These were originally just for my personal projects, but they wound up kind of popular and they have a bunch of cool potential uses, so I released them to the public:

Download (and source code) page: http://tomato.fobby.net/wanderbar/
Project details + description of all 11 plugins https://legendsoflocalization.com/wanderbar/

[...]

It's basically a glorified Lua script thingy, but the fact that everything is displayed via HTML means you can also use HTML5, CSS3, Javascripts, external APIs, local storage, etc. with ease. I haven't written up documentation on how the plugins work, but I've already seen an EarthBound script comparison plugin and a Zelda 2 automap plugin doing their thing:

[...]

Anyway, I thought I'd share this stuff on RHDN in case anyone wants to play around with it or improve upon it or whatever else. It's definitely been a lot of fun to work on and opens up all kinds of neat project opportunities.

Great stuff! I'm assuming this is Windows-only? I've been meaning to try my hand at a much cruder version of this to aid me in my learning of Japanese, but I'd rather it be something native for Linux. Speaking of, what kind of API did you use to make those nice hovers with word definitions for the FF6 stream? I haven't looked at the code yet, but this would be very useful for educational purposes.

Tomato

  • Sr. Member
  • ****
  • Posts: 330
    • View Profile
    • Legends of Localization
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #5 on: October 16, 2018, 05:52:20 pm »
I'm interested to see if that Zelda 2 automapper works with rom randomizers.

Yep, it does!




Great stuff! I'm assuming this is Windows-only? I've been meaning to try my hand at a much cruder version of this to aid me in my learning of Japanese, but I'd rather it be something native for Linux. Speaking of, what kind of API did you use to make those nice hovers with word definitions for the FF6 stream? I haven't looked at the code yet, but this would be very useful for educational purposes.

Yeah, it's currently Windows only - I cover that bit briefly on the pages in the first post. Everything in the sidebar is handled as HTML, so literally *any* sort of Javascript or browser plugin can be used with it. In this case, it's a modified version of the rikai-kun/rikai-chan Japanese-to-English dictionary browser plugin.

Someone on Twitter was looking into trying to port this stuff to Linux but I don't know anything beyond that. I'm a terrible programmer when it comes to Windows and this sort of thing so all of that is beyond my skill.

Orochi Kusanagi

  • Jr. Member
  • **
  • Posts: 87
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #6 on: October 16, 2018, 05:58:57 pm »
This is one cool and creative idea!

Marth776

  • Newbie
  • *
  • Posts: 1
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #7 on: October 18, 2018, 02:44:56 am »
I'm usually a lurker on on this forum, but I would really like to express my gratitude for this project and its grand scale. At the very least, I will finally be able to play Final Fantasy VI T-Edition in a way that doesn't get me killed around every corner :)

Just two questions, though. Is it normal that the item/magic names aso. just appear when I use them in battle but not when hovering over them? Also, you mention the following on your page:

"An even older emulator RAM watcher displaying Final Fantasy VI T-Edition enemy info and name translations"

Do you still have this RAM viewer so it can be used for playing T-Edition or would it be too hard to make it work well?

azoreseuropa

  • Sr. Member
  • ****
  • Posts: 392
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #8 on: October 18, 2018, 09:29:33 am »
Interesting.

I wonder about Rockman & Forte, Rockman 7, and Rockman X1-3 able to translate in English?

Tomato

  • Sr. Member
  • ****
  • Posts: 330
    • View Profile
    • Legends of Localization
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #9 on: October 19, 2018, 02:01:56 am »
Just two questions, though. Is it normal that the item/magic names aso. just appear when I use them in battle but not when hovering over them? Also, you mention the following on your page:

Yeah, the T-Edition plugin is very, very bare-bones and is nowhere as complete as my other FF6 plugin. The in-battle item/spell message box was the last thing I did before I set it all aside. I imagine it wouldn't be *too* hard to convert some of my main FF6 plugin code to work with T-Edition, but I don't have the time to do it myself unfortunately.

"An even older emulator RAM watcher displaying Final Fantasy VI T-Edition enemy info and name translations"

Do you still have this RAM viewer so it can be used for playing T-Edition or would it be too hard to make it work well?

I never released it, it only worked with one specific version of Snes9X on one specific computer of mine using a specific, really outdated version of the T-Edition patch.

Tomato

  • Sr. Member
  • ****
  • Posts: 330
    • View Profile
    • Legends of Localization
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #10 on: March 23, 2020, 03:32:56 pm »
Last week I released a Game Boy/GBC/GBA Wanderbar thing. It includes two plugins too, one for Zelda: LttP GBA and one for Final Fantasy Adventure.

The Zelda one compares the Japanese SFC script, Japanese GBA script, English SNES script, and English GBA script + enemy names all at once. Things changed for the GBA port, so it's a neat way to explore the differences:



The Final Fantasy Adventure one is a translation comparison thing but also shows off all kinds of pre-release screenshots, material exclusive to the official Japanese guides, and more:



You can download the stuff here: http://tomato.fobby.net/wanderbar
And more info + pics here: https://legendsoflocalization.com/wanderbar/#final-fantasy-adventure-game-boy

azoreseuropa

  • Sr. Member
  • ****
  • Posts: 392
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #11 on: March 23, 2020, 04:34:31 pm »
Neat. What about Rockman & Forte for SNES and GBA ? Curiosity.

Tomato

  • Sr. Member
  • ****
  • Posts: 330
    • View Profile
    • Legends of Localization
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #12 on: March 23, 2020, 08:22:27 pm »
The Wanderbar uses a plugin system, so it should be possible for you to make one if you know what all the addresses, etc. are.

Reefytheslim

  • Jr. Member
  • **
  • Posts: 7
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #13 on: May 26, 2020, 10:14:15 pm »
it sure has potential
i was wondering if i could read a RAM address instead of cpu? i have this game (mini yonku let's & go power wgp2) and it loads the dialogue text in ram for the entire screen you're on before it displays the text ingame (at ram address 7e9e10) every time) so in theory if i could read the text at this address in ram and display it in wanderbar sidebar entirely, it could help playing and translating the game easily right? im still trying to figure out how to do this though..

Tomato

  • Sr. Member
  • ****
  • Posts: 330
    • View Profile
    • Legends of Localization
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #14 on: May 27, 2020, 06:10:24 pm »
At the moment, the most efficient solution would be to see when the address gets read and then use that CPU address/those CPU addresses to do what you want. But you could also just have the Wandebar script continually check 7e9e10 inside doLogic() in your Lua script.

I could probably add read/write hooks to future Wanderbar releases, but I'm not sure when that'll be next.

I happened to take a look at the game just now to try to find good CPU addresses for you, but it's hard without a text table handy. If you have one, I can take a closer look for you.


darknior

  • Jr. Member
  • **
  • Posts: 8
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #15 on: May 28, 2020, 04:23:56 am »
WOAW your project is incredible !!!!
I love the idea :)
It's really better than only put them in 16/9 ...

I think the best solution if you can is to port your work to Libretro. To let every one use it on all support and boards. More users = more contributors too ;)
Like we have on Retroachievements now every one can use them too :)

Thanks

Reefytheslim

  • Jr. Member
  • **
  • Posts: 7
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #16 on: May 28, 2020, 03:57:40 pm »
At the moment, the most efficient solution would be to see when the address gets read and then use that CPU address/those CPU addresses to do what you want. But you could also just have the Wandebar script continually check 7e9e10 inside doLogic() in your Lua script.

I could probably add read/write hooks to future Wanderbar releases, but I'm not sure when that'll be next.

I happened to take a look at the game just now to try to find good CPU addresses for you, but it's hard without a text table handy. If you have one, I can take a closer look for you.

i will try that as well

actually i have a table for the game:
Quote
00=[end]
05=[line]
11=[space]
12=0
13=1
14=2
15=3
16=4
17=5
18=6
19=7
1A=8
1B=9
1C=「
1D=
1E=『
1F=』
20=あ
21=い
22=う
23=え
24=お
25=か
26=き
27=く
28=け
29=こ
2A=さ
2B=し
2C=す
2D=せ
2E=そ
2F=た
30=ち
31=つ
32=て
33=と
34=な
35=に
36=ぬ
37=ね
38=の
39=は
3A=ひ
3B=ふ
3C=へ
3D=ほ
3E=ま
3F=み
40=む
41=め
42=も
43=や
44=ゆ
45=よ
46=ら
47=り
48=る
49=れ
4A=ろ
4B=わ
4C=を
4D=ん
4E=っ
4F=ぁ
50=ぃ
51=ぅ
52=ぇ
53=ぉ
54=ゃ
55=ゅ
56=ょ
57=が
58=ぎ
59=ぐ
5A=げ
5B=ご
5C=ざ
5D=じ
5E=ず
5F=ぜ
60=ぞ
61=だ
62=ぢ
63=づ
64=で
65=ど
66=ば
67=び
68=ぶ
69=べ
6A=ぼ
6B=ぱ
6C=ぴ
6D=ぷ
6E=ぺ
6F=ぽ
70=ア
71=イ
72=ウ
73=エ
74=オ
75=カ
76=キ
77=ク
78=ケ
79=コ
7A=サ
7B=シ
7C=ス
7D=セ
7E=ソ
7F=タ
80=チ
81=ツ
82=テ
83=ト
84=ナ
85=ニ
86=ヌ
87=ネ
88=ノ
89=ハ
8A=ヒ
8B=フ
8C=ヘ
8D=ホ
8E=マ
8F=ミ
90=ム
91=メ
92=モ
93=ヤ
94=ユ
95=ヨ
96=ラ
97=リ
98=ル
99=レ
9A=ロ
9B=ワ
9C=ヲ
9D=ン
9E=ッ
9F=ァ
A0=ィ
A1=ゥ
A2=ェ
A3=ォ
A4=ヵ
A5=ヶ
A6=ャ
A7=ュ
A8=ョ
A9=ヴ
AA=ガ
AB=ギ
AC=グ
AD=ゲ
AE=ゴ
AF=ザ
B0=ジ
B1=ズ
B2=ゼ
B3=ゾ
B4=ダ
B5=ヂ
B6=ヅ
B7=デ
B8=ド
B9=バ
BA=ビ
BB=ブ
BC=ベ
BD=ボ
BE=パ
BF=ピ
C0=プ
C1=ペ
C2=ポ
C3=
C4=
C5=ー
C6=~
C7=・・・
C8=A
C9=B
CA=C
CB=D
CC=E
CD=F
CE=G
CF=H
D0=I
D1=J
D2=K
D3=L
D4=M
D5=N
D6=O
D7=P
D8=Q
D9=R
DA=S
DB=T
DC=U
DD=V
DE=W
DF=X
E0=Y
E1=Z
E4=!
E5=?
E6=.
E7=・
E8=:
E9=(
EA=)

Tomato

  • Sr. Member
  • ****
  • Posts: 330
    • View Profile
    • Legends of Localization
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #17 on: May 28, 2020, 09:41:09 pm »
Okay, it's only a minor start, but if you put a CPU check/function at c03a5c, you should be able to look at what's in RAM address 7e9dde to find the loaded text. Note that the first 4 bytes at 7e9dde seem to be non-text data - the actual text seems to appear at 7e9de2.

When the game is loading text into that RAM address, it appears to cycle through all of the lines assigned to that NPC. Since my tests were done at the start of the game, I don't know how these alternate lines are handled. If we're lucky, the above CPU address + RAM address technique will still work, but there's no guarantee. Hopefully that makes sense.

Reefytheslim

  • Jr. Member
  • **
  • Posts: 7
    • View Profile
Re: [Release] SNES & NES "Wanderbar" sidebar + plugin system
« Reply #18 on: May 30, 2020, 06:41:13 am »
Okay, it's only a minor start, but if you put a CPU check/function at c03a5c, you should be able to look at what's in RAM address 7e9dde to find the loaded text. Note that the first 4 bytes at 7e9dde seem to be non-text data - the actual text seems to appear at 7e9de2.

When the game is loading text into that RAM address, it appears to cycle through all of the lines assigned to that NPC. Since my tests were done at the start of the game, I don't know how these alternate lines are handled. If we're lucky, the above CPU address + RAM address technique will still work, but there's no guarantee. Hopefully that makes sense.


thnx man for the help
i'll try that and see what happens