snesrev / smw

Smw
https://discord.gg/AJJbJAzNNJ
Other
406 stars 38 forks source link

My feature requests #27

Open Gorilli09 opened 10 months ago

Gorilli09 commented 10 months ago

What feature do you want to get added? And how it will work?

And also, do you have any plans on reverse-engineering Super Mario All-Stars, Super Mario World 2: Yoshi's Island, and/or any other SNES game?

CowSoftware commented 10 months ago

I feel like these features are possible now that ASM support has been added. Though we have to wait a little until they become available.

FitzRoyX commented 10 months ago
* Widescreen & Ultra-Widescreen support

It's important to understand that a specific width needs to be requested because many behaviors rely on it. Things like:

--where to clamp the camera at start and end. --where to spawn/despawn enemies --where to confine mario's movement in levels that forcibly scroll

Also, devices like the SteamDeck and Nintendo Switch can only do 1280x720, so minimizing black bars, cropping, and tile cutoff for these devices would require 416. Because 416 is divisible by 16 (world tile size) and 416x3 = 1248 whereas 432x3 = 1296.

* SA-1 patch support

The PC port eliminates slowdowns better than SA1, so it is needless complexity here. I think it's the mod author's responsibility to make a compatible port here. snesrev removed the CPU limitation, now someone else needs to come in and eliminate the PPU so that the game is loading all assets into ram from the start, reading images from PNG spritesheets, reading levels as TMX maps.

Gorilli09 commented 10 months ago
* Widescreen & Ultra-Widescreen support

It's important to understand that a specific width needs to be requested because many behaviors rely on it. Things like:

--where to clamp the camera at start and end.

--where to spawn/despawn enemies

--where to confine mario's movement in levels that forcibly scroll

Also, devices like the SteamDeck and Nintendo Switch can only do 1280x720, so minimizing black bars, cropping, and tile cutoff for these devices would require 416. Because 416 is divisible by 16 (world tile size) and 416x3 = 1248 whereas 432x3 = 1296.

* SA-1 patch support

The PC port eliminates slowdowns better than SA1, so it is needless complexity here. I think it's the mod author's responsibility to make a compatible port here. snesrev removed the CPU limitation, now someone else needs to come in and eliminate the PPU so that the game is loading all assets into ram from the start, reading images from PNG spritesheets, reading levels as TMX maps.

Why not using VitorVilela7's widescreen patch?

Gorilli09 commented 10 months ago

I have some features as well you could add A options menu could be accessed with the pause button which would have the following options

  • controls (like change input (controller, keyboard, joypad, ect) and which buttons for what
  • choose which format the music is in (.wav, .mp3, .midi with soundfonts, or the SNES one (i forgot what its called)
  • debug mode

and i know this one sounds off but

  • super mario maker functionality that can make romhacks and maybe create a online server that you can get romhacks or courses

The first one can be set in the config file. The rest I disagree.

The-MAZZTer commented 10 months ago

Also, devices like the SteamDeck and Nintendo Switch can only do 1280x720

The Deck is 1280x800 btw.

Jrmewam commented 9 months ago

Rom hack seems to be possible but highly experimental. you have to build assets with -f argument : python restool.py --extract-from-rom -f

See issue #35

Tatsh commented 7 months ago

Adding XDG support for where data gets saved to would be nice. Save data currently gets written to CWD, but the game also reads everything else from there too. On Linux and similar systems, that latter area is always read-only.

OfficialPixelBrush commented 5 months ago

Would defo love Widescreen, and unfortunately the Widescreen Patch by VitorVilela7 doesn't seem to work, even with the -f flag. It simply refuses to start.