• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Research: Revisiting Multiplayer Capabilities

U.Flame

Maker of Short Games
1,326
Posts
15
Years
Sorry about the lack of progress. A friend lent me Kingdom Hearts 2 so uh, yeah place the blame wherever. Anyways besides the distraction from a damn good game, I have just experienced a bit of a setback. I was copying everything I did to Ruby unto Emerald, and just found out my Emerald ROM is broken. It shouldn't take too long to redo what I did, I just need to get a new ROM. Once I'm finished with KH2 distractions, I'll probably resume random experiments in Ruby in the meantime.

And don't worry, even if I recieve no support, come across an obstacle, or lack any certain goal, I won't give up on this. Especially now that it finally has attention. Even back when it didn't and I left it alone for a long time, I still had plans to revive it eventually. It's one of the things I pursue because I'm personally interested.
 

U.Flame

Maker of Short Games
1,326
Posts
15
Years
Like I said, life may get in the way, but that doesn't mean the project itself will ever die. I'll personally to see it's completion, even if it does take an unreasonable amount of time. So! With that in mind I've got news! I got nothing done these past months! But wait, there's more! Now I can! Turns out my Emerald problem had to do with my emulator settings. I believe it should work without a problem now. I can dust off my files and skills and start porting my Ruby experiments to Emerald now. I won't promise immediate results, but know that it's active again.

Baby steps progress so far. I replicated the map, no problems there. The gambling games, the shop, and healing all works just like Ruby. NPCs work the same too, they often face a random direction when spoken to. So far, no difference. Gonna continue the same experiments as Ruby for now, but I don't expect much difference.
 
Last edited:

U.Flame

Maker of Short Games
1,326
Posts
15
Years
So, i have to say, you can fix the "random facing" by doing a async-connectionmode. Its is pretty simple, if you call special 0x127, the player2 who talks with player1 get the message, that "the player is too busy to talk to". Otherwise link-connection will be lost. Special 0x128 clears the blockade and you can talk to the other player again. Just an example from German-rom:

#org 0x1BF200
textcolor 0x3
special 0x127
msgbox 0x81C01C9 MSG_KEEPOPEN '"Bitte geh in Position und beginne\..."
special 0x128
closeonkeypress
end


'---------
' Strings
'---------
#org 0x1C01C9
= Bitte geh in Position und beginne\nmit dem Tausch.

I Hope i could help.^^

Those specials work for Emerald? Where must I apply them? The NPCs or the Pokemon Center multiplayer-handling lady? I placed them to a shopkeeper's script but it had no effect. The Pokemon Center lady's script is huge, I may need some help with where to place the specials there, if that's where they go in the first place.
 

U.Flame

Maker of Short Games
1,326
Posts
15
Years
Sry dont see that you hack emerald, here is same special for emerald.

'---------------
#org 0x2774B6
special 0x129
msgbox 0x82784E2 MSG_KEEPOPEN '"Please take your seat and start\ny..."
special 0x12A
closeonkeypress
end


'---------
' Strings
'---------
#org 0x2784E2
= Please take your seat and start\nyour trade.

Special cmds must be at begin and end of script, handle it like this:
Special 0x129 is like lock, Special 0x12A is like release.

Thank you for the help. It seemed to work, but there was a connection error afterwards. Maybe I have to be more careful with the placement. I'll test it some more.
 

U.Flame

Maker of Short Games
1,326
Posts
15
Years
Bit more testing done on Emerald. Battles work the same as Ruby. Trainers are functional only with one Pokemon. If they have more than one, a link error will occur when they send out their next. Other players must stand still during anyone's battles or desyncing will occur. Scripted wild battles are functional, but with the same desyncing rule. Wait, sometimes a link error occurs mid-battle. Don't know what causes it yet. Berries can be planted. The placement might be a bit quirky, and planted berries are only in that person's screen. Still, not too bad. A new thing I tested now that I didn't test in Ruby is the Wailmer Pail. the dialogue won't go away, and the person remains stuck. Don't know how growth is functioning.

I tried the 0x129 and 0x12A specials again (thanks again for that), and it did get the NPC to face the player correctly. It won't show the NPC facing any different from everyone else's screen, but it's still a step up. It does have some unexpected side-effects I'm still trying to figure out though. Like I said, trying it in the shopkeeper's script caused a link error in the end. Now I tried it in my own gender-specific wild battle script, and now the player battles both gender's Pokemon one after the other. It doesn't cause an error afterwards, but I don't know why or how it exactly it messes with the script. Here's the script in question:
'---------------
#org 0xE3D089
special 0x129
lock
faceplayer
checkgender
compare LASTRESULT 0x0
if 0x1 goto 0x8E3D0A4
compare LASTRESULT 0x1
if 0x1 goto 0x8E3D0C5
end

'---------------
#org 0xE3D0A4
msgbox 0x8E3D0E6 MSG_NORMAL '"Hi, I'm actually Latios."
cry 0x198 0x0
wildbattle 0x198 0x46 0xBF
fadescreen 0x1
fadescreen 0x0
hidesprite LASTTALKED
setflag 0x200
special 0x12A
release
end

'---------------
#org 0xE3D0C5
msgbox 0x8E3D101 MSG_NORMAL '"Hi, I'm actually Latias."
cry 0x197 0x0
wildbattle 0x197 0x46 0xBF
fadescreen 0x1
fadescreen 0x0
hidesprite LASTTALKED
setflag 0x200
special 0x12A
release
end


'---------
' Strings
'---------
#org 0xE3D0E6
= Hi, I'm actually Latios.

#org 0xE3D101
= Hi, I'm actually Latias.

Clearly I'll have to test it some more. Oh, and I don't remember much of Emerald. I'm still open to any suggestions, but now I'm especially awaiting testing any Emerald-exclusive stuff. Remind me of anything that comes to mind. :)

Tested a few already. Any Battle Frontier event's can't work as it is since any event that requires saving causes a link error. I can't get the Deoxys triangle thing to work, both in multiplayer and out. Anyone know what kind of requirements it needs? Incidentally, anyone know how to activate riding a bike via script?
 
Last edited:
Back
Top