Banner
Views: 567,962,537
Time: 2017-09-21 05:54:51 PM
19 users online: Akaginite, chickaDEE Magazine, Galleth Cooper, gohkenytp111, King_Koopa, Luansilva12, Manofer, MasLak, MercuryPenny, Najeraldo, PMH, PokerFace, RZ1, smwcentral, Spy, UTF, VilelaBot, o Wakana, YourAverageROMHacker - Guests: 39 - Bots: 211Users: 32,506 (1,193 active)
Latest: jesusgeuse
Tip: Check the Documents section. Tutorials and other useful information can be found there.Not logged in.
[SMWTwitch v0.1 WiP] Twitch helps playing SMW + Random-Level-Generator
Forum Index - Sunken Ghost Ship - C3 Museum - Summer 2017 - [SMWTwitch v0.1 WiP] Twitch helps playing SMW + Random-Level-Generator
Pages: « 1 »
Hello guys,

my friend 'Foultier' and I are currently working on a new project for the SMW hacking scene.
I had the idea of what it could be like, if the Twitch-Chat could directly influence the streamers SMW hack - So we present:




Story-Mode
The story mode is quiet simple and our main focus.
The levels are premade like a regular hack, though this time the chat is crucial to get further in to the level.
By typing !on/!off in the Twitch-Chat, chatters have the ability to change different game mechanics.

Currently these game mechanics consist of:
- Changing the ability to swim in a level, or not.
- Changing the state of on/off-triggered-blocks (waterblocks, solid blocks, etc.)


Endless-Mode
This mode is kind of experimental.
The player is thrown into a room, in which the chat decides what kind of level is generated next.
Yes, generated.
They have the ability to choose between different tiles: "Plains", "Forest", "Cave", "Ghost House", "Castle".
Whenever the chat made a decision the player is being ported into the randomly generated level.
On top of that the chatters can decide what kind of .asm-gimmick the player has to face in this level.
Examples for these gimmicks would be: "Low Gravity", "High Gravity", "Auto Jump", "Auto Walk", "Inverted" - more to come.
The possibilities are nearly endless. (You can give us some more inspiration what to implement, etc.)

The Bot

That's the main view of the streamer - you see chat-messages, the userlist of your twitch-chat and the votes.


This is the login-page of the bot.
You choose your open emulator (currently supported: ZSNES, ZMZ, Snes9x, BizHawk), and login with your Twitch-Name and Oauth-Key.


This page is for miscellaneous stuff, such as downloading the Rom, getting the compatible emulator, and informations about the project.


Random-level
This is something more experimental. And for that, I prepared* a rom to showcase the random level generator:

DOWNLOAD


Feedback is always appreciated




*Was not actually prepared and therefore only has a whole lot of 10 cave and 20 plains screens to choose from. Repetition expected but the concept is what counts, right???
This is my first post after lurking for so long.

Like TheBiob already said:
Feedback, ideas and everything else is highly appreciated.

Thanks a lot :)

Greetings, Foultier
Twitch SMW-Edition idea sounds nice :)

--------------------
Helping with sprites remoderation. Isn't it cool?
TOTAL REMOVED SPRITES: 30 (31?)
TOTAL UPDATED SPRITES: 28 (37?)
--------------
I'm huge help!
PM me if you want me to make a level!
Just... Wow. This is so impressive.
This is great tool! Nice job guys. #tb{:DD}
This is preety cool, I'd like to try this with legend of zelda nes.

--------------------

NoALT


I had this idea before and did it as my special stream for 1k followers:
https://www.twitch.tv/videos/156422680?t=12m48s

It was a really fun idea, my chat had commands to change mario powerup/itembox (including invalid states), mario pose, toggle level water/slippery, bgmode (just to mess a lot with the game on the end)

For this I just wrote a lua script for BizHawk, read the chatlog from a text file. I made the script do savestates for each commands because some powerups may crash the game, that way I can go back if this happens
Originally posted by furious

For this I just wrote a lua script for BizHawk, read the chatlog from a text file. I made the script do savestates for each commands because some powerups may crash the game, that way I can go back if this happens


Interesting, watched a bit of the stream. I didn't understand a word though, but it was really fun to watch :)

Funny enough, TheBiobs first idea was to use lua scripting for that project aswell.
But we thought about making it a little bit more advanced (user friendly), so now it's a combination of C# and .asm.
Originally posted by Foultier
Originally posted by furious

For this I just wrote a lua script for BizHawk, read the chatlog from a text file. I made the script do savestates for each commands because some powerups may crash the game, that way I can go back if this happens


Interesting, watched a bit of the stream. I didn't understand a word though, but it was really fun to watch :)

Funny enough, TheBiobs first idea was to use lua scripting for that project aswell.
But we thought about making it a little bit more advanced (user friendly), so now it's a combination of C# and .asm.


Sorry, I was speaking in brazilian portuguese (most of my viewers are brazilians).

It was very fun, good luck with your project bud :D
always love fun ideas, nice work

--------------------
wiki
That's pretty creative!
best project ever!! :)
It's perfect to see what it turned out, so good job on that! #smw{:TUP:}
⑨th anniversary of Cirno's Perfect Math Class! Click here! English Subs!
You can also call me as Kamek the Magikoopa or Kamek, but not Kamekku, seriously.

Tumblr | Facebook | Twitter | カモン! | Avatars (Sash Lilac) | [insert stuff here]
Now let's go tear those Octarians limb from limb from limb from
Get pumped up 'till the crack of the dawn!
Sometimes, everything needs to be stopped right now.
I do wonder if you can do this outside of streams. Would kinda love to. If that's been stated already, excuse me, but I can't really see it.

--------------------
At college right now, please make sure to not be overly impatient. My hack should progress but don't expect much.

'Dreams are but another reality. Never forget...'
You know, this sounds like it could be very useful for trolling people who play this, either way... the integration with twitches "CHAT" of all things, very interesting indeed. How tricky was it to get this to work? Full of fun or full of trolls, watching anybody play this would be interesting in and of itself, very good accomplishment you've worked on here.



Originally posted by Skewer
You know, this sounds like it could be very useful for trolling people who play this, either way... the integration with twitches "CHAT" of all things, very interesting indeed.


It all depends on how nice the chat of the streamer is in the end of the day :)


Originally posted by Skewer
How tricky was it to get this to work?


Since I am firm in C# and Biob is good in .asm and C# it was just a matter of time to get things working.

Basically the Bot connects via IRC to the Streamers Twitch-Chat and reacts to commands posted there.
Then the Bot writes Data into the RAM of different Emulators (tricky thing is: most emulators use different RAM all the time, and it's not the RAM SMW uses).
TheBiob wrote .asm which calls these addresses and reacts depending on what was written before.

That's basically how it works - though I made it really simple here.

There are some more things to code to confirm a connection between the Bot and the hack, to get the votes, etc.



Originally posted by Skewer
I do wonder if you can do this outside of streams. Would kinda love to. If that's been stated already, excuse me, but I can't really see it.


What exactly do you mean? Do you want to play the hack and do the inputs yourself? (!on/!off inputs, random-level-gimmicks)


Greetings, Flo
Originally posted by Minuy600
I do wonder if you can do this outside of streams. Would kinda love to. If that's been stated already, excuse me, but I can't really see it.

We did consider an "offline mode" however since the actual hack needs the twitch chat to progress we haven't come up with a proper solution for it yet.
I do have some ideas for it though I'll need to talk to foultier about that later.


Originally posted by Skewer
How tricky was it to get this to work?

The trickiest part was probably figuring out the ram addresses the bot needs to write to to get the communication between twitch chat and the game. After we got that working it was pretty easy to code a simple system with it.
Pages: « 1 »
Forum Index - Sunken Ghost Ship - C3 Museum - Summer 2017 - [SMWTwitch v0.1 WiP] Twitch helps playing SMW + Random-Level-Generator

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2017 - SMW Central
Legal Information - Privacy Policy - Link To Us


Total queries: 21

Menu

Follow Us On

  • Facebook
  • Twitter
  • YouTube

Affiliates

  • Talkhaus
  • SMBX Community
  • GTx0
  • Super Luigi Bros
  • ROMhacking.net
  • MFGG
  • Gaming Reinvented