Language…
8 users online: bpn7zangado, fathy2001, GrandMasterLynx, OEO6, OnlySpaghettiCode, Ralshi02, taste1122, Zavok - Guests: 63 - Bots: 294
Users: 55,736 (2,333 active)
Latest user: bpn7zangado

Chat Hacks 2.0 and More USB2SNES Explorations

Misc. HackingOther

Last Summer C3, I posted about tooling around with USB2SNES. I'm back to get some coins show off some new tech.

First, the big one. Project CARL. It's an extension of Chat Hacks, which was called Write Enabled in the prior thread. Chat Hacks is where Twitch gets access to the WRAM on my Super Nintendo while I'm playing SMW.

What CARL adds is the ability for people to write UberASM like modules on the website and then load them at runtime using chat commands. Here's a clip where several different modules are all running at the same time:


The modules being:
* spread: a port of D^4's tile spreading code.
* lrmorton: the module that teleports Mario to #2 MORTON'S CASTLE, if L or R are pressed.
* SLeappery: a combination of leaping physics and weird ice physics.
* awarpdash: teleports Mario about 4 blocks in the direction held when A is pressed.
* rand64: randomizes $64


As of this post, people have posted about 143 different asm snippets to the site, all of which are loadable. Most of which don't crash!

Here's a few more clips from recent Chat Hacks streams:
* Gonna get on this Yoshi!
* Let me off!
* can't not fly
* ducks
* Standing on nothing
* flappy mario
* Mosaic coin aliasing
* Lotus Spam



In addition to CARL, I also added real time player sprite swapping. You can see it in action here, where it rotates through a subset of them:


I've usually got character swapping on as a points incentive when I'm playing SMW on Twitch.

Also, during the Undefined Behavior Marathon, I rigged it up so the donation poll decided which character sprite I was playing as, and it automatically updated as the totals changed. Went from Mallow to Marisa mid jump.



I've also been working on some tech that makes moderating hacks a bit easier for me. Inspired by Tomato's Wanderbar tool, I've got message box and level name translations--provided by Google Translate--as part of my overlay. Makes understanding Japanese, Portuguese and other non-English hacks a lot easier:


Also, if you look on the Portuguese hack's overlay, you can see what I call the Auto Auto Splitter, which tries to build splits for SMW hacks without any manual input. It works fairly well on hacks that don't have long level name ASM. I've not gotten around to using it for speed running, but it does work well for timing blind clears of Kaizo levels. Still a work in progress.



To cap it off, I've also been looking into messing with Zelda: A Link to the Past over usb. Got character sprite swapping working pretty well:



And there's this silly thing I built to test another feature I was working on:





tl;dr: USB port on the sd2snesFXPAK is still pretty cool, and I'm always happy to answer questions about how it works.
This all looks so cool and impressive. On the fly swapping of characters is really nice and kinda reminds me a lot of games where you can switch your characters skin whenever and just resume playing.
Really creates a lot of options for people to mess around with.

The sprite swapping in Zelda also looks like it would really be fun to create some funny moments depending on what character does what in crucial moments of that game.

(Piranha Plant Awakening was my fave part)


But yeah once again nice work man! #smrpg{y}
Views:
Time:
6 users online: o imamelia, o o FPzero, o bebn legg, o Nameless, o Major Flare, o o Scrydan - Guests: 69 - Bots: 160Users: 69,666 (9,999 active)
Latest: Year 2020
Tip:
Stuff like this is really impressive! The kind of work to allow this kind of ASM sorcery is just amazing.

Who would have thought many years ago we'd be able to troll people playing hacks at a mere keystroke when we least expected it?

The character swapping is really neat too! ^.=.^

Honestly, I was never good at adapting to differences in structure for emulation. This looks really neat, but I don't really understand it well.
Please pardon the eye.
This is pretty awesome! Kind of a bummer your thread last year didn't even get a single reply. I don't think I noticed that thread, either. This is legitimately putting the USB port to some good use, though. Pretty useful for streamers, and also generally impressive from a technical standpoint. I wouldn't even have thought about doing that.
Feel free to visit my website/blog - it's updated rarely, but it looks pretty cool!
This looks pretty cool! I wish that would be implemented in ROM hacks and other games.
Panty and Stocking—and Pop Team Epic, evidently—are coming back. Once again. Yes, I'm counting on you. 『いけいけ団長、頑張れ頑張れ団長!』
Help us raise funds for the Armed Forces of Ukraine. #ДопомагаємоРазом / #HelpTogether
“Even if you personally are so dissatisfied with life that you want the world to end, surely the cruel reality is that it will continue on, unchanging. All the better for someone perfectly content, like me.”
Aya Shameimaru, Touhou Suzunaan ~ Forbidden Scrollery
I think of all the mega hype things you’ve posted here, auto splits have me ultra hyped. Its gonna be interesting seeing all the runners using it for (most) hacks!
Interesting, is the player swap feature functionally the same as what we can do with Mario ExGFX patch but twitch-controlled I guess? And it's gonna be fun messing up live plays with this. finally coding knowledge for evil purposes

Thanks for this gem

Userbar by Green Jerry

Also a Fortaleza Reznor user. If you... digo, si hablas español, hackeas, buscas ayuda, o simplemente se te da conocer gente, únete, somos puerta abierta.
These are cool!!! I especially like the translation thing. That'll be useful for playing really fun hacks for those who don't understand the languages. The chat hacks looks chaotic as well... Good stuff!
I do art commissions cheap! PM here or DM via Discord for more details.

**Layout by Erik557


The fact that you can even have some functionality of Twitch connected to old games like Super Mario World still fascinates me immensely. One of the reasons I love this community! Great work, dude! :)
Click here to enter the world of mediocre!
Thanks for all the replies! #smrpg{y}

Originally posted by RPG Hacker
This is pretty awesome! Kind of a bummer your thread last year didn't even get a single reply. I don't think I noticed that thread, either. This is legitimately putting the USB port to some good use, though. Pretty useful for streamers, and also generally impressive from a technical standpoint. I wouldn't even have thought about doing that.


Yeah, I suspect that submitting the thread with like...an hour to go didn't help things. Honestly, I'm kinda shocked that more people aren't playing with it, but then I take a look at the public usb2snes libraries and it's not too shocking. They're not really built to do fun things quickly.

Originally posted by kamekku14
This looks pretty cool! I wish that would be implemented in ROM hacks and other games.

All the Mario stuff works in pretty much every non SA-1 (usb2snes is a little gimped when the enhancement chips come out) hack I've tried. There are a couple I know of where character swapping isn't likely to work, but those--namely Sicari Remastered and the like--aren't hacks I'd want to subject to it.


Originally posted by LMPuny
Interesting, is the player swap feature functionally the same as what we can do with Mario ExGFX patch but twitch-controlled I guess? And it's gonna be fun messing up live plays with this. finally coding knowledge for evil purposes

Thanks for this gem

I couldn't find the exact patch, but I'd say the odds are high. There are only so many ways to change Mario's sprites without modifying the NMI routines too much.


Also, if you do wanna see Chat Hacks live and in action, I do it about twice a month on my Twitch channel. And I've submitted it to a couple future marathons, so keep your eyes out.
I remember your thread from the other C3 and I though it was pretty cool already, and this spices things even more! Great job patcdr, it's definetly something that can help spicing up streams, specially long ones.

Misc. HackingOther