-
Notifications
You must be signed in to change notification settings - Fork 14
Add ISNIConnector and New Game: Sanrio World Smash Ball! #40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
|
Alright! Now that we do have a generic SNES connector for Bizhawk, I have ideas a bit clearer about how this should be added. The libraryI didn't look much into the library part yet (because I don't know much about SNI specifics), but you're saying:
That sentence is a bit too much in the specifics for me to understand what it means yet, but you're basically saying this lib could be avoided entirely if there wasn't a bug related with WPF. The library is quite massive, and it feels a bit intimidating to include this directly inside the codebase. If it is absolutely needed, could it be turned into its own repo building to a nu.get package that we would use as a dependency? As stated previously, I don't know much about SNI / Protobuf yet, so I'm mostly trying to understand what we can do. The generic connectorThe For instance, we now have a If Here, what we'd want would be to make the Having some kind of common interface with ProcessRamWatcher would be a plus and would completely hide the complexity for connector developers. The gameI haven't yet taken a look at the game, but given the current situation, it could be made its own PR and added using the current ISNESConnector, which will become compatible with SNI down the road with subsequent PRs. ConclusionOverall, it would be a very interesting addition to have SNI compatibility for HintMachine, and you seem to have done a technical base for that to happen, which is nice. |
dotnet/wpf#810
The library is "just" the generated protobuf (and relevant overhead), I don't really think it'd be worth pushing out to a separate repository.
My intention would be that the SNI connector would be the primary SNES connector, and that
The complexity is already hidden from connector developers, the ISNIConnector class defines all of the functions that a developers would need, and even abstracts away connection/disconnection logic. I would actually recommend looking at the sample game included, as the resulting implementation are far simpler than the prior 2 SNES game implementations. |
Adds a connector to connect to alttpo/sni using the gRPC interface, and adds a game as an example.
The second project only holds the SNI gRPC code, and is mostly present due to a bug involving WPF and protobuf generation.
I was also having some weird issues with the most recent version of grpc.net.client, so probably avoid updating that one.
Sanrio World Smash Ball!
Quests
Win Matches! (5).
Score Goals! (10)
Build Super Meter! (3200, 20 total meters).
Collect Powerups! (10).
Balancing may be required but for now I think this is a pretty good spot for it.