[ 3 / biz / cgl / ck / diy / fa / ic / jp / lit / sci / vr / vt ] [ index / top / reports ] [ become a patron ] [ status ]
2023-11: Warosu is now out of extended maintenance.

/vr/ - Retro Games


View post   

File: 1.26 MB, 1233x1069, peachs_adventure_green_hill2.png [View same] [iqdb] [saucenao] [google]
7311797 No.7311797 [Reply] [Original]

Gameplay and development discussion:
What homebrew / hacks are you playing /vr/ ?

Are you working on anything? Would you like to learn? Projects and questions welcome.

Communities:
romhacking.net
smwcentral.net
metroidconstruction.com
sonichacking.org

IPS Patcher:
romhacking.net/utilities/240

Archives:
archive.org/details/rom-hack-patch-archive
mediafire.com/folder/50m95vbbuyf25/vr's_ROM_>Hack_Recommendations
mega.nz/folder/jpMxlQyZ#oCwbRyPFaMcZl3gOF5mvSg

NESdev:
wiki.nesdev.com
forums.nesdev.com

SNESdev:
wiki.superfamicom.org
github.com/alekmaul/pvsneslib

N64dev:
n64dev.org

GB Dev:
gbdev.gg8.se/wiki/
github.com/pret

Genesis Dev:
gendev.spritesmind.net/page-doc.html
github.com/Stephane-D/SGDK

Saturn Dev:
segaxtreme.net
www.jo-engine.org
antime.kapsi.fi/sega/docs.html

Previous:
>>7262583
>>7205614
>>7155960

Want something here? Post it for the next thread.

>> No.7311809
File: 17 KB, 420x350, nesdev.png [View same] [iqdb] [saucenao] [google]
7311809

NESdev contest is up. Entries are due March 1st:
https://forums.nesdev.com/viewtopic.php?f=36&t=21635

You can download / play last years entries on a multicart ROM:
https://action53.itch.io/compocart19

>> No.7312670
File: 44 KB, 280x180, BCAS.png [View same] [iqdb] [saucenao] [google]
7312670

What are some good Romhacks (Not just Megaman), with new game mechanics?

Like Mario World with new Powerups or movement options.

>> No.7313281
File: 1.90 MB, 320x240, pablo coming through.gif [View same] [iqdb] [saucenao] [google]
7313281

Is there a website that archives all the old cracktros and demoscene stuff from consoles from bbs days? Its incredible seeing what amatuers were doing in the early days like in this vid

https://youtu.be/oLPHGYaP59M

>> No.7313353

>>7313281
archive.org i guess?
https://archive.org/details/msdos_demoscene?&sort=-downloads&page=11

>> No.7313514
File: 6 KB, 256x232, Mitsume ga Tooru (Japan)-3.png [View same] [iqdb] [saucenao] [google]
7313514

Mitsume Ga Tooru on famicom has a debugger where you can get tons of juicy info
>look at every tile bank and get their IDs
>look at every object and show their object numbers
>play every sound and musics and get their IDs
>look at the map of every stage with x/y coordinates given
>play the ending

How fucking based is this. I've never seen a game left with such a complete debugger before. Would be so helpful if every game had this

>> No.7313515
File: 3 KB, 256x232, Mitsume ga Tooru (Japan)-4.png [View same] [iqdb] [saucenao] [google]
7313515

>>7313514
only thing "missing" is being able to switch palette for the tile bank and object viewers

>> No.7313532
File: 1 KB, 256x232, Mitsume ga Tooru (Japan)-5.png [View same] [iqdb] [saucenao] [google]
7313532

>>7313514
my bad, "obj" stands for a frame viewer, doesn't actually give the object ID but frame number

Also the debugger is a bit glitchy and needs to be reset sometimes; but this thing is golden nonetheless, makes me want to hack this game

>> No.7313840

>>7313514
Sonic has a somewhat functional debug mode:
https://www.youtube.com/watch?v=gpZVrljq-U8

>> No.7314270
File: 1.32 MB, 1024x576, 1608426471455.png [View same] [iqdb] [saucenao] [google]
7314270

I've been porting several SM64 romhacks to PC.
I now have done 4 and am trying to do as many as I can each day after work while improving my tools along the way.
Check them all out here: https://github.com/jesusyoshi54/sm64ex-alo
In the future I'm just going to release them as patches that you can rename to .exe
Some videos of hacks I've ported:
https://www.youtube.com/watch?v=QhXbIXmiBnQ
https://www.youtube.com/watch?v=GYqrmoBqtz8
https://www.youtube.com/watch?v=I-JeDCb-D0Y
Likely by the time you read this I'll have ported several more as it only takes like an hour to do a port now.

>> No.7314285

>>7314270
Good shit man, keep up the good work. Are you gonna try to tackle games with custom objects and other elements that were made in ASM? How do you plan to handle that sort of thing? Case by case?

>> No.7314320

>>7314285
Custom objects generally reuse vanilla code a lot, so they won't really be difficult to remake, but they have to be remade on a case by case basis as far as I know. I am willing to test out methods of auto porting them though such as static recompilation or mips to x86 conversion.
Currently all I am able to guarantee is auto disassembly of all custom object code.
Anything that isn't code related is basically already able to be ported though. There is really little difference to me between an original asset and one imported by a hacker, just that the hacker ones can sometimes be completely broken.

>> No.7314337

>>7314320
That's good to know, the process seems easier than I imagined it to be. Especially if some of it can be automated. I figured most of the hacks that weren't just simple levels hacks might have to have large chuncks of them entirely recreated from scratch.
Well, good luck with all of that then. It's gonne be really neat to to revisit some of these older hacks.
(By the way, fucking hell, can't believe SM64 modding has been around for so long that I'm starting to get nostalgic about the hacks themselves.)

>> No.7314350

I wonder if you could setup thunks to emulate mips for custom objects. As long as the important memory segments are accessible, it could work.

>> No.7314380

>>7314350
Honestly going from emulator only hacks that often broke because of custom code, to native PC using decomp, only to hamfist in that shitty old code again is kind of the opposite of what I want to do with this project.
I not only want to port hacks, but keep them preserved in a state where they're easily accessible and editable to other hackers.
On top of that, sm64 hackers take tons of liberties with their custom asm that heavily relies on the fact that it was compiled with -g, and do tons of retarded stuff all the time that make it only work on shitty emulators anyway even given the liberties they take.
If they wrote it in C it would be possible to auto decompile quite easily I think though.

>> No.7314937

https://mega.nz/file/S3QQCLQL#P8Fg2Kz9vANOQFUjs5eSxux7U-t0v5P7KhCt9JVrX_E

Was gonna make a thread but figured this would be better here, it's a batch of homebrew from awhile back, Not sure if anyone else has done it but I was thinking about compiling some homebrew into one link, since a lot of it is spread pretty far apart.

>> No.7314989

Bump for these:
>>7307659
>>7308864
>>7308976
>>7309014
>>7309295

>> No.7315719
File: 5 KB, 312x101, branch.png [View same] [iqdb] [saucenao] [google]
7315719

Small question I can't seem to find the answer on google. Why does this particular BEQ at the top branches if the result is 00?

My assumption is that if you use BEQ with no compare accumulator, it compares with 0? Or does it use the latest value used for comparing?

>> No.7315725

>>7313514
Noob here, how does it help?

>> No.7315729

>>7315719
BEQ branches if the Z flag is set, regardless of how it's set.

LDA sets the Z flag is the value it loads is a zero.

>> No.7315739

>>7315729
Thanks, I need to learn more about flags. I'm sure there are tons of useless code I wrote that could have been shorter or simplified if I knew more about them. I'd have put a C9 00 in there myself for instance.

>> No.7316096
File: 3 KB, 256x232, Mitsume ga Tooru (Japan)-8.png [View same] [iqdb] [saucenao] [google]
7316096

>>7315725
Because you can witness and debug each seperate thing being processed without the other things getting in the way.

I just loaded the level 1 map and it took me 30 seconds to find out where the graphical data for 16*16 background blocks is located. That would be incredibly useful information if you wanted to edit that or make a level editor.

>> No.7316194

>>7315739
https://www.masswerk.at/6502/6502_instruction_set.html
Flags are set based on the last instruction that was performed. There are 8 of them:
> BEQ - Equal - Branch if 0
> BNE - Not Equal - Branch if not 0
> BPL - Plus - Branch if $00-$7F
> BMI - Minus - Branch if $80 - $FF
> BCC - Carry Clear - Branch if carry flag clear
> BCS - Carry Set - Branch if carry flag set
> BVC - Overflow Clear - Branch if overflow flag clear
> BVS - Overflow Set - Branch if overflow flag set

>> No.7316584
File: 4 KB, 256x232, Mitsume ga Tooru (Japan)-10.png [View same] [iqdb] [saucenao] [google]
7316584

>>7316096
and now I found the pointers and basically all the data to make levels.... 8*8 blocks, 16*16 blocks; 32*32 blocks, screen number order, palette and attribute for 8*8 blocks. The only thing I haven't found out yet is telling the type of scrolling and how much it should scroll.
All of this was easy to find thanks to the debugger. In comparison I gave it a try in Shatterhand and I struggled to find things.

And, I also found the enemies list (object id, X and Y locations).

I know all this but don't have the skill to create a level editor

>> No.7316603
File: 339 KB, 527x484, chuck.png [View same] [iqdb] [saucenao] [google]
7316603

>>7315719
>>7316194
> There are 8 of them
There are 8 branching instructions that detect 4 usable flags, N, Z, C, and V, which are Negative, Zero, Carry, and Overflow You don't need a compare instruction (CMP, CPX, or CPY) specifically to set Zero and Negative; most instructions do besides the ones that write to memory.
Carry and Overflow only work with Add and Subtract (ADC and SBC). besides BIT which sets the Overflow flag to the value of bit 6, which is unintuitive but a helpful optimization in some cases.
Processor status flags are all kept in one internal Byte, and you can manipulate the stack to store and set processor status flags directly (PHP and PLP). This is helpful when dealing with interrupts that break whatever you are currently executing to do something else.

>> No.7316621

>>7316584
>but don't have the skill to create a level editor
sure ya do! why not?

>> No.7316635

Does anyone know how or if there is a tool or a way to change the 3d models in a PS1 game? I want to make a mod for parappa the rapper (just a texture mod) but the back texture of parappa (and others) are the same as the front texture for some parts like the shirts. Is there any way I can make the game load a new texture instead of also using the other one?

>> No.7316757

>>7316621
Where would I even start? I never did something like this

>> No.7316813

>>7316757
What languages are you comfortable with? You could start by reading data from the ROM and representing it in a UI

>> No.7316919
File: 95 KB, 318x298, EjbzzSxX0AEwR07.png [View same] [iqdb] [saucenao] [google]
7316919

>>7314270
Oh thats you? Awesome job man. Any chance of star road?

>> No.7317008
File: 12 KB, 472x500, Dendy!.png [View same] [iqdb] [saucenao] [google]
7317008

>>7316635
Here is an example of what I mean. I want to replace sunny funny with this character but in game the front/back are the same.

>> No.7317016
File: 41 KB, 472x500, PlayStation - PaRappa the Rapper - Sunny Funny.png [View same] [iqdb] [saucenao] [google]
7317016

So if I tried to use them for it the dress, etc area would be the same on both sides instead of using different textures for front/back.

>> No.7317046

>>7314270
What about the Kaze Emunar hacks? Or Super Mario Party 64?

How easy is it to implement? Like, is it just adding the romhack data to the Mario 64 decompilation?

>> No.7317625

you guys seem to know your shit

whats the best tracker to use to make music for the genesis?
one notable one im seeing just from a quick search on the matter is VGM music maker
is there any other one that you know of thats better than that one?

>> No.7317797

>>7311797

Punch-Out!! - Feat. Barry Mcguigan

https://anonymousfiles.io/glaFdOX1/

>> No.7317984

http://longc.at/vorld2.html

>> No.7318019

>>7317625
My personal go to is Deflemask. It's free, but not open source. It has tracking software for a ton of consoles. (C64, NES, SMS, GB, PCE, Genesis). It also has forums too if you need, and is still in development.

>> No.7318043

>>7316919
My tool can port star road but it requires more work than I care to put in. Other people have said they plan on working on it.
>>7317046
Custom code has to be rewritten, so it takes a bit of time. I don't care enough to port anything difficult when there are many better hacks that can be ported automatically.
The porting process currently is run the python tool with the correct args, copy/paste into the decomp repo I've setup to take it, then fix some names so they match up and compile. It takes longer to compile than to port usually.

>> No.7318371
File: 76 KB, 750x522, 06-super-mario-bros-64-sm64-rom-hack.jpg [View same] [iqdb] [saucenao] [google]
7318371

>>7318043
How about Super Mario Bros 64?

>> No.7318402

>>7318371
N64:https://gbatemp.net/threads/symphony-of-the-night-n64-tech-demo.480087/
SNES:https://m.youtube.com/watch?v=DDFMhsCrNZE

>> No.7318408

https://m.youtube.com/watch?v=mDr5zHlyLSw
https://m.youtube.com/watch?v=3jEHZoNrAxA

>> No.7318443

>>7311797
Have you heard about N64brew jem?

>> No.7318482

>>7313840
Meh

>> No.7318652

>>7318019
>>7317625
As for SNES engine music, there like ton of them. Not sure on N64, PC-FX, FM Town and X68000

>> No.7318725

https://github.com/akaneia/akaneia-build/releases/download/0.5/Akaneia.Builder.Experimental.7z
https://github.com/akaneia/mexTool/releases/download/LatestCommit/mexTool.zip

TL;DR
>Melee modifications finally caught up with SSB64 modding and Brawl modding
>the Akaneia build features Wolf as a custom stand alone character, new Volleyball mode, and etc
>the M-EX tool makes Brawl/PM modding-tier character hacking possible for Melee
>all Slippi compatible
>M-EX makes the Brawl's clone engine inferior in capabilities
>been in the works since 2008

>> No.7318820
File: 696 KB, 2902x1940, fox_only_melee.jpg [View same] [iqdb] [saucenao] [google]
7318820

>>7318725
based. i've been following along since salvato and 20xx. excited to see some real progress!
the unclepunch training mod is looking awesome too

>> No.7318971
File: 92 KB, 854x461, s2.jpg [View same] [iqdb] [saucenao] [google]
7318971

>>7318725
FINALLY
As much as I love 64 Remix and the Brawl Modding community, I'm so glad Melee can finally get some new mods and easier then before.
Brawlbox is my shit.

>> No.7319158
File: 4 KB, 256x232, Mitsume ga Tooru (Japan)-13.png [View same] [iqdb] [saucenao] [google]
7319158

>>7316584
>The only thing I haven't found out yet is telling the type of scrolling and how much it should scroll.

Found it
>scrolling past the current level boundaries

I'm loving this game. The code is so clean and easy to read and the game is so easy to hack. On top of this, the game uses a dynamic tile loading system similar to that of Mega Man 5, meaning you can just switch enemy types around and don't worry about which sprite bank to load because the game does that automatically for you.

And, the game has a fuckton of free space. There is more than 5000 free bytes at the end of the bank used for level strucutres. Sadly you can't add as many enemies, but if my math is correct you could add 27 more enemies in the game, which should be more than enough to make bigger levels.

>>7316813
That's the thing, I don't know any language except a bit of 6502 ASM.

>> No.7319612

>>7318971
>Brawlbox is my shit.
check out BrawlCrate, it's more up-to-date and has some new features included.
https://github.com/soopercool101/BrawlCrate/releases

>> No.7319670

>>7318019
>>7318652
thanks for the tips anon, much appreciated

>SNES engine music
ill prolly catch some flack for this, and there ARE some outstanding OSTs on the console terranigma comes to mind, but i always found the SNES sound to be a bit washed out sounding compared to its competitors. even the TGFX-16 had a more appealing sound to it imo.
most of the OSTs on SNES are drowned in reverb, like some shitty phil spector record. and, capcom being the most egregious example imo, often times some absolutely TERRIBLE sounding instrumentation
8-bit era capcom -> 16-bit era capcom sound design is like night and day in the worst way possible

would be interesting to see firsthand whether that was due to the systems limitations, or capcom just firing all their good musicians

>> No.7319723

>>7319670
Their samples sounded terrible, take the synth brass from some of their SNES games. You could manage with it though.
Good example of using it
https://www.youtube.com/watch?v=uI2R7DDadIY
Bad example of using it
https://www.youtube.com/watch?v=4aO_My7DQmA

>> No.7319746
File: 386 KB, 200x157, BE61B830CFC6B00A587F559167E791E8B36E3F95.gif [View same] [iqdb] [saucenao] [google]
7319746

>>7318725
>Sonic and Snake will finally be in Melee

>> No.7319754

>>7319723
yea i have a crappy little toy yamaha keyboard that has better fake brass samples lmfao
second one clearly was a huge inspiration on this masterpiece
https://www.youtube.com/watch?v=0kcF7E69C6Q

>> No.7320880
File: 1.22 MB, 1215x1023, snes_tracker.png [View same] [iqdb] [saucenao] [google]
7320880

>>7319670
This looks interesting:
https://github.com/bazzinotti/snestracker/wiki
Plenty of info and pre-ripped samples too.
> would be interesting to see firsthand whether that was due to the systems limitations
SNES music absolutely was. You only had 64KB of audio memory for every currently loaded sample, so often times the sample rates were based around an abysmal 22khz, but there was some smoothing filtering applied to make it sound a bit better.
> Echoes
The SPC700 was capable of hardware echo. Like the DX7 in the 80s, it was often overused egregiously.

>> No.7320918

>>7320880
>You only had 64KB of audio memory for every currently loaded sample, so often times the sample rates were based around an abysmal 22khz
ouch
im getting downsampled just reading that

>The SPC700 was capable of hardware echo. Like the DX7 in the 80s, it was often overused egregiously.
i can see it all now
>be some vidya composer in early 90s
>spend weeks/ months punching in a whole excel document worth of seemingly random hex
>finally get to hear it
>show your boss
>"wtf this sounds gay? kys"
>"well whaddya expect when you only gave me like 3% of the cart to do an enti-"
>"stfu and make it better or you dont eat"
>"k"
>go back to your office and drown all the shitty compressed samples in reverb
>show it again
>"wow this sounds way better now get out of my office"

>> No.7320972

Are there any hacks of the 3D Mario games with Mario Kart tracks imported in as levels?
I thought that would be neat.

>> No.7320979
File: 9 KB, 142x156, dkc1.gif [View same] [iqdb] [saucenao] [google]
7320979

>>7320972
> 3D Mario games with Mario Kart tracks imported
not that i know of?
in the good old days (that weren't so good) each game had it's own engine, so rendering / objects / collision or even assets couldn't just be shared between games.

>> No.7320993

>>7320979
I know it wouldn't be drag and drop, but it should be possible to convert them somehow.
https://www.youtube.com/watch?v=IwZhBTij8hs

>> No.7322787

https://www.youtube.com/watch?v=kcRDcKyH27A

>> No.7323504

>>7318820
https://www.youtube.com/watch?v=CXvykjd93pQ

>> No.7323568

>>7313281
For SNES there's the good old Anthrox Intro Collection and there was floating some large archive around on usenet way back. For genesis there a nice collection by jarre on eab, DMG/GBC/GBA there's a great website called gameboy demospotting which has about 95% of them. There's not one for N64 cause N64 emus are shit and cant play them anyway however old groups did upload them on their own websites. WS/WSC there was only 2 trainer menu's anyway (by a guy who still cracks shit). For PSX there's the nice paradox intro collection (misses a lot). Also worth checking pouet & getting full good sets and looking through them. Also ConsoleCopyWorld as well as they still have all the old cracks, trainers, PAL<->NTSC patches for PSX.,PS2,GC, PSP you you to patch your roms with. Theres a few more sites & BBS's but you can find them yourself.

>> No.7324349

>>7320993
>but it should be possible to convert them somehow.
best whip out that slide rule boi
u gon need it

>> No.7324364

>>7311797
What does 4chan think of Mega Man V DX? I was studying the system and its code to make it myself, but it looks like I got beat to the chase. I wonder if I'll amount to anything in life.https://www.youtube.com/watch?v=6EE9ll8TNnw

>> No.7324375

>>7324364
After the colour versions of SML2 and Kirby I was hoping this was going to happen.

Looks great though I see some questionnable colour choices but I guess that can't be helped no matter who makes it.

I also hope the faster GBC CPU will help get rid of lag in this game which is quite bad in places

>> No.7324393

>>7324375
Once this does get released, I wouldn't mind asking the board what colors would look better. For some reason, NONE of the classic games' environments had color in their concept art. I wonder how they decided back then. Then I hope I can go one step further and do a disassembly of this absolute titan. Better boss fights, new stages, and new characters, here we come!

>> No.7324446

>>7324393
Good luck. Out of curiosity, how easy is GB(C) hacking compared to NES? NES is all I know.

>> No.7324568

>>7324446
The processor is based on Z80 ASM, as opposed to 6502 ASM. The graphics format is different, but both are editable in YYCHR. You also have two dedicated graphics layers, which is nice. BGB is the best emulator / tool i know of, and it isn't quite up to the level of Mesen, or even FCEUX, so the tools aren't as refined. Otherwise, it's not such a stretch...
https://bgb.bircd.org/
https://www.youtube.com/watch?v=HyzD8pNlpwI

>> No.7326189
File: 61 KB, 640x449, 013388130115.jpg [View same] [iqdb] [saucenao] [google]
7326189

Anyone here willing to take a very simple request?

All I'm asking is for heightened damage output from the player characters, maybe like 1.5 or 2x. There's a great game here--but it's held back by having to wait for the enemies to wander back onto the screen three or four goddamn times before they actually die.

I imagine it'd be a pretty simple hex edit but I'm a brainlet so I'm probably wrong

>> No.7327337
File: 22 KB, 480x360, isai.jpg [View same] [iqdb] [saucenao] [google]
7327337

>>7318725
Wolf looks dope
https://www.youtube.com/watch?v=_Ein5D_Br9k

>> No.7327364

>>7318408
Based
>>7326189
>Undercover Cops beat Crapcom

>> No.7327368

>>7320880
>64kb
Suck Super NES didn’t have 96KB ram, it would help out alot. Also known try Pitch Module too.

>> No.7327392

>>7319754
>>7320880
>>7319670
Great example: https://m.youtube.com/watch?v=HKhpLoG9dak&list=PLhHaXqzqDeUTmn7tZuaskH2jzJLOwqqcv&index=4

>> No.7327403

>>7318402
Iga must be happy.

>> No.7327462

>>7324446
Look at the pokemon people on github, they've got full disassemblies of all red/blue/yellow/gold/silver/crystal and a bunch of tutorials on the wiki to get a feel of what it's like.

>> No.7327517

>>7327337
God I fucking hate Leffen.

>> No.7328276

NES.
Is there any way I can load the value of whatever tile is on a particular place on the screen, and branch out if it's equal to a determined value?

Afaik that stuff is not stored anywhere once it's processed by PPU_Data. Can it be done somehow?

>> No.7328313

>>7328276
Nvm; I found another solution. Thankfully the stuff I'm looking for is also tied to palette values and those are stored so I can check those.

still would like to know though

>> No.7328331

>>7327403
>Toru Hagihara - Castlevania: Symphony of the Night - Producer, Director, Programmer

>> No.7328824
File: 64 KB, 300x276, mario_isScrewed.png [View same] [iqdb] [saucenao] [google]
7328824

>>7328276
> Is there any way I can load the value of whatever tile is on a particular place on the screen
Technically yes, but, it's (usually) not a great idea to access VRAM. Once the screen begins drawing, you (mostly) have to leave the PPU alone. You could preload and store some values of tiles before vBlank ends, but, a better solution (usually) is to find wherever the values are in ROM and compare those. Most games deal in 16x16 metatiles anyway, so, comparing that value from ROM is how most games operate.
TL;DR - Don't bother the PPU. It is very busy.

>> No.7328851
File: 175 KB, 1604x877, smb_metatile_RAM.png [View same] [iqdb] [saucenao] [google]
7328851

>>7328824
Some games make a clone of the 16x16 metatile map in RAM and use that. Like this game.

>> No.7328869

>>7328824
I'm doing a simple (or so I thought) hack of Teenage Mutant Ninja Turtles 2 NES that lets the player switch turtles.
I have to update the HUD to change the name of the turtles, as well as change palette.

The thing being, this game only writes to the PPU when it needs to and only the parts that it needs to. Example: if I change the PAL values of the turtles in the RAM, that won't be updated until the next time the game needs to load a different palette (new enemy batch for instance).

So, I wrote a routine that writes to the PPU and updates the PAL and HUD values that need updating; and the point was exactly to find conditions so it only writes when it needs to and not all the goddamn time. Thankfully, I found a way without checking the PPU by comparing whatever PAL value is currently in the RAM to the one that would need writing.

I did find out that the PPU needs to be left alone btw; as my routine works only if it's the same bank that processes the other PPU writing, otherwise garbled mess appear on the sprite for split seconds; so yes, I could feel that this was a bad idea but I thought I had no other solution until I found one

t. amateur who has no idea wtf he's doing. The is the first time I deal directly with the PPU

>> No.7328984
File: 429 KB, 638x565, tmnt_tv.png [View same] [iqdb] [saucenao] [google]
7328984

>>7328869
> I'm doing a simple (or so I thought)
HA
> garbled mess appear on the sprite for split seconds
Yep. The PPU uses the PPU_DATA pointer to draw the current screen. If you try to change it while it's drawing, the PPU becomes very unhappy with you and your frame ends up a garbled mess.
> t. amateur who has no idea wtf he's doing.
you're doing just fine =)

>> No.7329030

>>7313353
OP was referring to consoles cracktros/demos not MS-DOS ones (otherwise you just had to tell her/him to go to pouet.net which is the definitive resource for these)

>> No.7329062
File: 640 KB, 907x566, 003_roots.png [View same] [iqdb] [saucenao] [google]
7329062

>>7329030
>>7313281
> pouet.net
didn't know. archive.org has all kinds of things.

>> No.7329836

>>7323568
Yes

>> No.7329841

>>7328331
>sure but Iga help expand it greater potential.
Also learn about N64 port.

>> No.7331802

https://www.youtube.com/watch?v=fWqBmmPQP40

>> No.7332243
File: 1.28 MB, 2048x1536, 1B934D8A-C262-4B2A-B358-B59906314C10.png [View same] [iqdb] [saucenao] [google]
7332243

>>7311797
>>7317008
>>7317016
>>7318371
REM: https://m.youtube.com/watch?v=Pk1UkmigkMs

>> No.7332285

>>7328984
Heh

>> No.7332412

>>7332243
i like the tile based dynamic lighting effects on this. pretty excited to see where his project goes... i've been following the NESdev thread too =p

>> No.7332453

>>7332412
Yeh, it going pretty smoothly.

>> No.7332543

>>7332243
Looks like she's gonna break her legs if she falls too far. Might even be a nice game feature. Like a rouge-like where you can easily go too far too fast.
Awesome looking all the same.

>> No.7332563

>>7332543
Very so.

>> No.7332645

>>7313514
Look at me, I play “le obscure” weeb gēmus - fuck off

>> No.7332646

>>7316096
This looks like Karate Kid (LJN shitter for NES).

>> No.7333056
File: 262 KB, 1600x800, SI_WiiUVC_SCAT_image1600w.jpg [View same] [iqdb] [saucenao] [google]
7333056

In another thread (now dead), anon was wishing he control the Option modules manually with L and R in S.C.A.T aka Final Mission

so, I decided to do that. Select moves the Options counterclock wise, A moves then clock-wise. With emulators, you can then map Select and A to L and R or whatever you want.

I hope anon sees this because I suck at this game so I could use a tester before "releasing" the hack.

This should work with both players BTW; hopefully that doesn't glitch out at some point (harder to test when I'm alone). Also if you press both buttons at the same time the options shouldn't move, either.

hacked rom beta version download:
anonfiles b48d67Cdp1

>> No.7333509

I updated the patch archive with most of the English translations, GBA "trainer" patches & the rest of smspower.org's patches.
archive.org/details/Gr8FamNESUpd8
This has been updated with 1500+ ROMs, most are Chinese.

>> No.7333921

>>7328984
>Yep. The PPU uses the PPU_DATA pointer to draw the current screen. If you try to change it while it's drawing, the PPU becomes very unhappy with you and your frame

New issue now and I guess this is what is happening. My code works fine but under situations when there are 2 players, it'll make the 2 player sprite jitter up and down the screen and flicker (and that happens whether or not I deactive my extra code related to the 2 player).

I suppose that it's getting confused by another code writing to the PPU at the same time but I'm not sure, in which case I'm not sure what I can do here...

>> No.7333995

>>7333921
Yep, that's exactly it. There is a routine that animates background stuff which is only active once in a while, and my code gets in the way if activated at the same time. Funny how it only screws up when there is a 2 player on screen.

Well, I'm stumped. It's not like I could run my code after that one to make sure they don't mix up either; since it's not the only that can potentially get in the way

>> No.7334061
File: 86 KB, 1692x772, smb2_dma.png [View same] [iqdb] [saucenao] [google]
7334061

>>7333995
Well, first things first, you can use the step through debugger on a frame when the graphics screw up to see if it is running past vBlank. If you can verify that's the issue, then maybe you can rework it.

>> No.7335479

>>7327392
lol better

>> No.7335592

>>7311797
why is "peach" so fucking fat

>> No.7335607

>>7318408
Yes

>> No.7335665

>>7335592
Living in your stomach rent free

>> No.7335673
File: 7 KB, 256x224, image.png [View same] [iqdb] [saucenao] [google]
7335673

>>7335665
Artistic license, I suppose.

>> No.7335679
File: 565 KB, 640x360, fatfuck.webm [View same] [iqdb] [saucenao] [google]
7335679

>>7335665
seriously though, why? what the fuck is the purpose behind obese peach
>>7335673
that's even worse than i thought what the fuck, she's got ROLLS

>> No.7335747
File: 837 B, 128x128, BombMarioHype.png [View same] [iqdb] [saucenao] [google]
7335747

>>7335679
> what the fuck is the purpose behind obese peach
well the hitbox is still vanilla mario if it makes you feel any better

>> No.7335784

>>7335592
There's a relatively new patch that allows for wider Mario sprites. Some people really love it.

>> No.7336365
File: 143 KB, 640x480, ss_e9440ca4b5d167aad2032b69d43af6a0b4a0595f.1920x1080.jpg [View same] [iqdb] [saucenao] [google]
7336365

>tfw sanic has thousands of romhacks but your favorite game has bupkis.

>> No.7336389
File: 514 B, 120x124, PissedOffStar.png [View same] [iqdb] [saucenao] [google]
7336389

>>7336365
there are also games that have had tools for years and no one has bothered to make anything with them sadly...
https://www.romhacking.net/utilities/518/
A Super Mario Land 2 level and map editor have existed for 15 years. No one has ever released a single level hack =(

>> No.7336670

>>7336389
https://gbatemp.net/threads/vivian-land-released-for-original-gb-sml2-hack.446655/

>> No.7336829

>>7336389
There was a guy who made an awesome little Blaster Master editor who got discouraged and quit working on it because nobody was using it. I thing the fact that he made it for Linux may have had an effect on it.

>> No.7337048
File: 422 KB, 476x437, terra_ff6.png [View same] [iqdb] [saucenao] [google]
7337048

>>7336670
> Vivian Land
> The only Super Mario Land 2 Romhack
> LUL
> Thanks i didn't know this existed =)
https://www.youtube.com/watch?v=w_-u-oakGnU

>> No.7337643

>>7334061
Thanks a lot for the info; I googled this shit and I learnt a lot.

It actually wasn't the issue at all. Well, it was, but not HOW I thought it was.
My code is in two parts: first, change the ram address that corresponds to the character ID number.
Then, my drawing code that updates PAL and HUD.

I assumed the 2nd part was the issue, but after deactivating it altogether the glitch was still there. Then it hit me, after my first part (switching character ID number), the game automatically updates the character sprites. That was the issue. I moved that piece of code to the "main" PRG bank, where the drawing code takes place, and it SEEMS to have fixed it. Fingers crossed, need to do more testing now.

>> No.7337685
File: 2.22 MB, 1024x928, turtleswitch.webm [View same] [iqdb] [saucenao] [google]
7337685

>>7337643
>all this just for that

>> No.7337946

>>7337685
The turtles are looking at you knowing how much time you wasted for this

>> No.7337949

>>7337946
The worst part is that it's purely cosmetic in this game, all turtles play the same

>> No.7338203

>>7318408
Check it out

>> No.7338264

>>7317797
Can't find anything on this, is this yours?

>> No.7338497
File: 758 KB, 782x678, battleKidFoP.png [View same] [iqdb] [saucenao] [google]
7338497

>>7337685
Glad you figured it out =) Order of operations is always important.

>>7337946
>>7337949
> how much time you wasted
That's a shit attitude to have. This is a great project for a beginner to start breaking down how romhacking tools and the NES architecture work. OP did it right: start with something simple. It's a neat little idea, and OP walks away with a ton of experience for his next project. This was time well spent: Flashing on screen April BTFO.

>> No.7338524

>>7338497
Don't worry about it, I'm the maker of the hack and also the poster of this >>7337949
and I took the other post as being ironical

>> No.7338719
File: 1 KB, 128x128, turtlePizza.png [View same] [iqdb] [saucenao] [google]
7338719

>>7338524
Well i'd be happy to give it a shot on real hardware w/ everdrive if you like. I love beating this game used to speedrun it a bit =p

>> No.7338772
File: 3 KB, 256x232, TMNT2weaponswitch12-2.png [View same] [iqdb] [saucenao] [google]
7338772

>>7338719
That'd be great actually, I have a famicom everdrive as well but another tester is always welcome

rom:
anonfiles
.com
/
hcK7XfC0p1

You'll notice that when you press Select to switch turtles, it plays the same sound as when you select things on the title screen and character select screen.
The last thing I did was slightly modify that sound so that it doesn't cancel out certain sounds (boulders rolling, the sound of "transportation drill", etc); and sound engines being what they are that was a rather blind edit, so if you notice that anything sounds weird let me know.

Other things:
- you can not switch turtles when there are certain objects movements on screen (like when you hit poles or traffic cones, barrel explosions etc)
- you can not switch turtles during the skateboard stage

I disabled both these cases because of sprite movement glitches if there is a turtle swap at the same time. I'm hoping to fix that in the future. It's probably the cause mentionned above, but atm I don't even have the 5 or so bytes needed to add a wait for vblank check and test if that would solve it. I either need to simplify my code to make space, or bankswitch, but bankswitching seems risky when dealing with the PPU, and I already pulled those bank switches a bit to add some extra checks in another place.

>> No.7338801
File: 5 KB, 256x232, TMNT2weaponswitch9-12.png [View same] [iqdb] [saucenao] [google]
7338801

>>7338772
btw, if you used to speedrun this game you might be interested in this:

I've been testing 2 players mode by playing by myself and setting both players to the same input. So, I'd place both turtles on the same X/Y pos and control both at the same time.

I was amazed to notice that everything stacks up:
- when 2 turtles hit an enemy at the same time, that enemy takes dmg from both turtles (that includes bosses!)
- 2 turtles kill an enemy at the same time = 1 point for both of them
- 2 turtles walk on pizza at the same time = HP replenish for both

And then I found this glitch. Due to the damage stack up of both turtles, I killed Shredder's clone WHILE it still had its helmet on (not supposed to happen), and WHILE it was using the death ray. Turns out that if that happens, the death ray remains on screen forever... still killing you if you go on its path; AND once you beat the game, the game freezes shortly after the start of the ending sequence.

I figure that's an OG glitch.
Anyway, the point was, the dmg stack up has amazing potential for 2 player speedruns. I used to coop this game quite a lot but we always found bosses 1 on 1, wrongly assuming being 2 against the boss was useless

>> No.7338890
File: 235 KB, 1500x1125, pizza_slice.jpg [View same] [iqdb] [saucenao] [google]
7338890

>>7338801
>Anyway, the point was, the dmg stack up has amazing potential for 2 player speedruns.
If i had to guess, it's probably a same frame situation, registering both hits before going into invincibility state.
>death ray glitch
LUL. My guess is they didn't account for both hits registering on the same frame. I don't think they do the death ray once the helmet is off.
Anyway, the strat to beat shredder in a speedrun is to stunlock him in a corner with jumpkicks with at least one of his minions still alive. I'm not sure how useful this would be, but cool to know!

>> No.7338893

>>7338524
I was. If you weren't sincere, there was no way you would have made that hack to begin with.

>> No.7338947
File: 5 KB, 256x232, TMNT2weaponswitch9-7.png [View same] [iqdb] [saucenao] [google]
7338947

>>7338890
> registering both hits before going into invincibility state.

You're right, that seems to be the case. However, doing some slow speed tests against Krang, it seems that the invicibility state is very short, only last for a brief period of time after the hit (less than a second), so having both players gang up against bosses still has a lot of potential.
As for basic enemies, I don't think they have many inv frames in TMNT2 (they obviously have more in TMNT3)

>> No.7338954

>>7338890
I feel like I've eaten this exact slice of pizza so many times in my life

>> No.7340583

Where do I get started with WLA-DX? I don't know how to work the linker.

>> No.7340602

>>7340583
> started
depends on your experience. try this?
https://eldred.fr/gb-asm-tutorial/introduction.html

>> No.7341270

>>7333056
Here it is now
http://www.romhacking.net/hacks/5678/

>> No.7341726
File: 4 KB, 256x232, TMNT2weaponswitch12-8.png [View same] [iqdb] [saucenao] [google]
7341726

>>7338772
>can not switch turtles under these conditions

Okay I just fixed that. It was a mistake I did when calling the play sound routine. I was skipping a bunch of stuff at the start of the routine and that caused these sprite issues, it had to do skipping storing either A or Y in a place in that routine.

Here is the fixed version if you want to test, you can now switch turtles at any time now even during the skateboard stage!

anonfiles
.com
/
X2Fcj2D3pf

I also fixed the adress byte to overwrite the name of the turtles on the HUD. I accidentally opened the name table viewer in FCEUX and that made me realize you can get PPU addresses that way, which made me realize that the HUD names are at address 20 and not A0. A0 is what I used and it's not a proper address but it worke due to shared bits, I think it was without consequence (maybe the PPU was also trying to write the other bytes which lead nowhere?) but you never know.

I'm done with this hack now I think. Onto doing the same thing for TMNT3!

>> No.7342245

>>7336389
>there are also games that have had tools for years and no one has bothered to make anything with them sadly...
Yep. There's a Kirby's Adventure tool for making levels and whatnot, and no one has bothered making a Kirby romhack. Most people just seem to want to make SMW hacks.

>> No.7342328
File: 5 KB, 256x224, kirbys_adv_nightmare.png [View same] [iqdb] [saucenao] [google]
7342328

>>7342245
> KA
There is a Halloween themed one, full game, pretty cool! I played it a few months ago.
https://www.youtube.com/watch?v=22Jg_2ihdYo
But yes, there are not nearly enough hacks for it. I remember the unfinished Puresabe one from like 10 years ago... it was looking awesome. Sad that he never finished it. Puresabe is the Rockman 4 - infinity dude

>> No.7342552

>>7341726
>>7338772
>>7337685
Neat, thank you

>> No.7342638

>>7332243
Nice pixel effects

>> No.7342997

>>7340583
Read the docs for it: https://www.villehelin.com/wla-README.html#document-man/wlalink

Basically, you want to have a linkfile that just states all your libraries, object files, etc. Compile each assembly file with wla-gb (wla-gb sourcefile.s) and it will spit out object files. Then you link everything together into one .gb file (wlalink linkfile out.gb).

>> No.7343176

skelux has brain cancer

>> No.7343243
File: 43 KB, 480x360, SM64_Star_Road.jpg [View same] [iqdb] [saucenao] [google]
7343243

>>7343176
i heard =(
https://www.youtube.com/c/Skelux/community

>> No.7345085

https://www.youtube.com/watch?v=x8PYE8A-WEw&list=PLUbw0IXAmW2rMk5g19MrqcyebecSrrSeJ&index=2

>> No.7345739
File: 809 KB, 768x696, TMNT3turtleswitch.webm [View same] [iqdb] [saucenao] [google]
7345739

>>7341726
>Onto doing the same thing for TMNT3!

Progress! I got the turtle ID and the HUD shit to swap when pressing select.
I'm only missing the palette change.

And yes i'm aware there is already a hack that lets you switch turtles for this game, but it only changes the turtle ID. I want to do this right by having the pal and hud change as well and allow a player to select the same turtle as the other player upon death.

I was pretty desperate at first but after untangling and understanding the code I found a really simple way to do this just call the same routine that is used when you select/swap turtles when you're dead

>> No.7345749

new RGMX. vector graphics. fuck yeah
https://www.youtube.com/watch?v=smStEPSRKBs

>> No.7345762
File: 232 KB, 500x375, 9c3.png [View same] [iqdb] [saucenao] [google]
7345762

>>7345739
also, I really wanted to add a secret button combination that plays the COWABUNGA! sound, but for some reasons it doesn't work during gameplay.

Which is weird because the other digitzed voice, the "HEY!", does work.

>> No.7345795

>>7345762
> COWABUNGA!
hmm. might require a bankswitch?

>> No.7345829

>>7345795
The "play sound" routine takes care of bankswitching so I'm not sure what's going on but I'll investigate when I'm done with the palette stuff.

If I put a READ breakpoint on button presses on the title screen I should be able to follow the code and see what happens before it plays the sound

>> No.7346129

Well fuck, I'm stumped again on the palette shit. If I don't wait for vblank, I get graphical glitches for a split second in the stage background.

if I wait for vblank, I get graphical glitches for a split second regarding the HUD. I think they may already be using vblank to write to the HUD, could that be causing it? (which uses tiles which don't even show up in the PPU viewer)

>> No.7346580

>>7346129
You could always give all turtles red headbands like the original comic.
How feasible do you think it would be to get multiple enemy types to be used at the same time?

>> No.7346654
File: 6 KB, 256x232, TMNT3_6-10.png [View same] [iqdb] [saucenao] [google]
7346654

>>7346580
>How feasible do you think it would be to get multiple enemy types to be used at the same time?

Technically I think it should be feasible. The 3rd and 4th part of the sprites PPU are used for enemies. If you can fit all enemies frames within a single of those parts, then you could create a system that updates the bank used depending on the frame; and thus use part 3 for an enemy type and part 4 for another.
I've seen other games do this. it's still limited, in that you'd have half your enemies be set to part 3 and half to part 4 and thus you couldn't have two part 4 enemies together.

On top of this, pal slot 3 isn't used in most cases so you could use it for that 2nd enemy type too.

This would be a lot of work though.

>>7346580
>You could always give all turtles red headbands like the original comic.

I guess though the point was to do better than the curret hack...
This is what currently happens when I switch palette. What looks like garbage, but is actually the HUD, mirrored, and using level BG tiles instead of its own, appears on the screen for a split second up to the turtle's knee where the PAL starts to get updated, then it disappears and the rest of the turtle's body has its PAL updated.

This is when I wait for vblank, when I don't I get the level background jitter up and down. At least I think I'm waiting for vblank, although I've tried several ways to do it and all types of branching just in case and get the same result.

>> No.7347192

>>7346654
>the point was to do better
I admit it's a cop-out.
Unless... you went with a stark B&W palette across the whole game and completely overhauled the graphics across the board to make it look like an indie comic book.

>> No.7347223
File: 50 KB, 220x225, iwata.png [View same] [iqdb] [saucenao] [google]
7347223

>>7346654
>At least I think I'm waiting for vblank
Step through and make sure setting X and Y through the Scroll register ($2005) are the last thing that happens. If you try to do something after that, it may do what you're describing. I don't know if this is what's happening, but it sounds very familiar...

>> No.7348712

https://www.youtube.com/watch?v=po9IY5Kf0Mo

>> No.7349228

>>7347223
Thank you, I located that routine, made sure the PAL change happens just before and that seems to work! I just need to fix a couple of details due to changing the placement of the routine.

If I had read the entire page on PPU Register on the NESDEV wiki it could have hit me to do that but I wrongly assumed "scroll" would have nothing to do with my current business

>> No.7349279
File: 66 KB, 1083x436, palette_RAM.png [View same] [iqdb] [saucenao] [google]
7349279

>>7349228
>I wrongly assumed "scroll" would have nothing to do with my current business
i learned from experience and swearing angrily in hopeless frustration =)

>> No.7349490
File: 1.92 MB, 768x696, TMNT3turtleswitch2.webm [View same] [iqdb] [saucenao] [google]
7349490

Okay I think I got it

>press Select to switch turtles
>only works during gameplay and when move = 0 (when standing still or walking)
>changes turtle ID, HUD face and name and palette
>both players can select the same turtle, even when selecting a new turtle after dying

I gotta test this shit to make sure nothing screws up now. Already had to patch some shit up (for some reasons the 2nd player PAL gets updated along with enemies PAL every time a new set of enemies spawn, and in my case, that was wrong; I patched that by making it ignore that one PAL value under these conditions which is a shitty hack but it works).

All last thing I'd like to see if I can do is let both players pick the same turtle on the character select after the title screen, in both games,; but I'm not sure I can pull that in a way that looks pro.

>> No.7349529

I'm working on a shitty genesis 3d engine, but I keep getting caught up in optimizing it which is necessary for it to be playable, but also causes progress to be extremely slow. I'm basically on rewrite three now with no gameplay in sight.

>> No.7350614
File: 847 KB, 1000x700, von_neumann.png [View same] [iqdb] [saucenao] [google]
7350614

>>7349529
> I'm basically on rewrite three now with no gameplay in sight.
based
https://www.youtube.com/watch?v=KcOneF-dLfc

>> No.7350758
File: 5 KB, 256x232, TMNT3_14titlescreenshit-1.png [View same] [iqdb] [saucenao] [google]
7350758

Testing this game, especially in 2 players... it really begs for a lag reduction hack.

>> No.7352578

https://www.youtube.com/watch?v=QJCwsi6O5xU

>> No.7352595

>>7349529
>I'm working on a shitty genesis 3d engine
That's still more than 99% of people here will ever accomplish

>> No.7353551
File: 676 KB, 327x224, N64_get_N.gif [View same] [iqdb] [saucenao] [google]
7353551

N64 game jam
https://www.youtube.com/watch?v=YuOEStdYg-8

>> No.7353778
File: 5 KB, 256x232, TMNT3_19-1.png [View same] [iqdb] [saucenao] [google]
7353778

Should I fix those transparent sprites around some of the turtles weapons on certain frames?

I think they're intentional to make the weapons stand out more but now that I've noticed them I can't unseen them and it triggers me

>> No.7354115

>>7353778
Turns out this is a code glitch that only concerns the 2nd player. From what I understand they're shifting some bits to differentiate 2p from 1p rendering, but that also causes X position discrepency of 1 pixel on some sprites.
Not sure I know how to fix that except in a dumb way.

>> No.7354298
File: 13 KB, 256x232, ezgif-4-ff83181a47e4.gif [View same] [iqdb] [saucenao] [google]
7354298

>>7354115
>>7353778
Ha! I fixed it I think! I noticed it only happens when the sprite isn't mirrored. Turns out it was a mistake when branching off checking if the sprite is mirrored, branching one byte earlier for it to process CLC fixed it.

I wonder if I should release a seperate patch that does only that?

>> No.7356469

https://www.youtube.com/watch?v=qJgsuQoy9bc

>> No.7358060
File: 82 KB, 640x480, gracehopper.jpg [View same] [iqdb] [saucenao] [google]
7358060

>>7354298
> branching one byte earlier for it to process CLC fixed it.
nice catch. you should look for JMP or JSR statements that lead there before changing the order of things generally: there may be a reason it was in that order. Unlike "modern" C-like programming, you can just JMP right in the middle of a subroutine and start executing.
Honestly though, sounds like you nailed it.

>> No.7358217

>>7354298
>I wonder if I should release a seperate patch that does only that?
If it's not too much work, why not?

>> No.7358290

>>7358060
Yeah I checked that and didn't see anything.
Also tested the entire game playing as 2nd player and didn't notice anything.

In this game you earn 1ups every time the score reaches the next 100k, but that doesn't happen anymore once you're past 500k. I thought this might be a glitch also but from what I understand it is intentional.

Last thing I wanna do is let both players select the same character on the character select screen. The turtles portraits brigthen/darker depending on which turtle is currently selected and the whole system is really not meant to have 2 players on the same pos. Been banging my head trying to make it work but so far I'm not sure why I can't get that last final step to work.
Good news is if I can get it work in TMNT3 I can easily make it work in TMNT2 because the system is very similar, but I might just give up on that one thing.

>> No.7358663

>>7358290
Fuck, I give up on the character select screen.

I thought I had it, I was super close, but turns out that if a player hovers over the same turtle as the other player, and then that other player moves, things glitch out; both turtles have their palette updated instead of only the 2nd one; and I can't figure out how to fix that.

I thought about changing the screen altogether so that all the turtles are coloured all the time but that is also a mess. Really not worth the effort.

>> No.7358725

I wonder what is the appeal in making a game for an old system.

>> No.7359791
File: 68 KB, 778x799, NESblast_21_1_30.png [View same] [iqdb] [saucenao] [google]
7359791

>>7358725
For me? It's authenticity.
It's also possible for a small team or a single person to tackle. 6th gen and on would take a small army to make something decent.

>> No.7361839

Total beginner retard interested in GBA, is my understanding correct that there isn't really a way to decompile / obtain the source code to a GBA game and you have to figure it out through a lot of reverse engineer fuckery and guesswork? Or am I misunderstanding?

>> No.7361858
File: 246 KB, 1920x1079, smb_disasm.png [View same] [iqdb] [saucenao] [google]
7361858

>>7361839
> decompile
you can absolutely decompile anything. it's up to you (humans) to document make sense of the opcodes though. It is a long and tedious process, and few games have full documented decompilations. Many games have partial ones in regard to level data or specific mechanics.
https://datacrystal.romhacking.net/
> obtain the source code
Not possible. If a game was compiled in C for example, it may be possible to reconstruct the functions used. "source code" also implies comments and other documentation used during development: that type of information you can never get from reverse engineering a ROM because it was never in the ROM in the first place.
This was done for the GBA pokemon games:
github.com/pret
> you have to figure it out through a lot of reverse engineer fuckery and guesswork
yep. no way around that. however:
there are programs and emulators that make this process easier. Mesen here allows you to step through the code line by line, document memory addresses, and eventually make sense of what you are seeing. Here is SMB reassembled with full labeling, for example.

>> No.7362086

>>7361858
I see... in that case, I am going to follow some hello-world-tier tutorials and see if this autism is compatible with my autism.

Thanks for your insight.

>> No.7362096
File: 415 KB, 496x462, hackerbro.png [View same] [iqdb] [saucenao] [google]
7362096

>>7362086
try this. gl hf
https://wrongbaud.github.io/posts/ghidra-debugger/

>> No.7362110

>>7328869
Will you hack let me play as Wario

>> No.7362115
File: 4 KB, 126x102, wario_thumbs_up.jpg [View same] [iqdb] [saucenao] [google]
7362115

>>7362110
asking the real questions

>> No.7362531

https://www.youtube.com/watch?v=lf2fdAQQpEY

>> No.7362628

>>7359791
>NESblat
How did you get that?

>> No.7363075
File: 54 KB, 1280x720, 1413526518495.jpg [View same] [iqdb] [saucenao] [google]
7363075

Do you guys happen to have a link of the SM64 Odyssey romhack that was taken over? Pretty please?

>> No.7363312
File: 6 KB, 256x232, Teenage Mutant Ninja Turtles II - The Arcade Game (USA)Revamped Weaponswitch-1.png [View same] [iqdb] [saucenao] [google]
7363312

>>7358663
>I thought I had it, I was super close, but turns out that if a player hovers over the same turtle as the other player, and then that other player moves, things glitch out; both turtles have their palette updated instead of only the 2nd one; and I can't figure out how to fix that.

I ended finding solution for this. there is still a really small issue but I don't think anyone will notice and I can't do anything about it without rewriting the way the entire menu works.

Which now means I now have to do the same for TMNT2....
I'm also looking up at a couple of glitches in TMNT2. Pic related happens on the last frame of the A+B attack for both Mike and Don, if you happen to have triggered the attack while jumping as high as allowed for this move to work.
There is also a glitched frame for this attack for Donatello.

There is a hack that fixes a bunch of similar rendering/sprite issues but these particular ones have gone unnoticed it seems, but now that I've seen them I can never unsee them.

I also fixed a glitch regarding the pizzas not rendering properly if the 1st player was game over'd at the start of the stage, which had also gone unnoticed before.

I kinda hate the fact that the "fixes" hack also gets rid of pizzahut stuff and turns the jump kick into the jap version; they should have made a version that does "fixes only" for the NTSC-U version that doesn't turn everything else into the Jap version, but alas if I re-did the same thing as them it would seem like a dick move; and I'm making sure my hack is compatible with theirs.

>> No.7363459

>>7363312
I'm sure a patch only for the fixes would be welcome. I kinda remember all the fire glitches in this stage to be jarring.

>> No.7363654
File: 28 KB, 256x462, TMNT2glitch.gif [View same] [iqdb] [saucenao] [google]
7363654

>>7363459
>I'm sure a patch only for the fixes would be welcome.

I guess I'll see about it, first I'll contact the guys who did that hack see if they want to do it and if not ask them if I can make a "light" version of their hack

Here is the glitches I was mentionned, which I think I fixed now. Need to make sure what I did for the bottom one doesn't screw up anything else. Donatello's leg was just the wrong sprite number set there.

> I kinda remember all the fire glitches in this stage to be jarring.

Fire glitches... ?

>> No.7363913

>>7362628
the hard way i'm making it =p

>> No.7366128

https://www.youtube.com/watch?v=x7FmelyC70Y

>> No.7366719
File: 44 KB, 530x671, hudshit.png [View same] [iqdb] [saucenao] [google]
7366719

>>7349279
In TMNT2 on NES, how do I know if I should write to Nametable 0 or Nametable 2 for the HUD?

Both seem to work just the same. Been using nametable 0 so far (but there is a small glitch that happens once every 3 playthroughs and I'm trying to figure out where that comes from)

>> No.7366764
File: 9 KB, 240x210, sonic_NES.png [View same] [iqdb] [saucenao] [google]
7366764

>>7366719
> Nametable 0 or Nametable 2
> Both seem to work just the same.
Yep. The NES only has enough (internal) RAM for 2 nametables. A large majority games just configure the mirroring to horizontal or vertical. Very few games configure to either single screen wraparound or actually populate all 4 nametables.
https://wiki.nesdev.com/w/index.php/Mirroring

>> No.7367089

>>7335679
It's an improvement.
You wouldn't get it.

>> No.7367145

>>7367089
explain

>> No.7367187

>>7367145
Peach is fat.
It's an improvement because it makes benis hard.

>> No.7367358
File: 1 KB, 29x86, ninjafinal.gif [View same] [iqdb] [saucenao] [google]
7367358

>the more I look into it the more shit I find to fix

pic related, one example (but there are others) bottom is fixed version. I think The guy who inputed the sprites into the game was drunk, or on some kind of crunch.

>> No.7367812

>>7324446
If you know 6502, you can get with Z80 familiar quicker than most, but it's not a "if you know one, you know them both" situation.

>> No.7368128
File: 5 KB, 256x232, TMNT2weaponswitch15-7.png [View same] [iqdb] [saucenao] [google]
7368128

>my bosses faces when I'm a drunk konami employee crunching

>> No.7368297
File: 12 KB, 512x448, 1612282397547.png [View same] [iqdb] [saucenao] [google]
7368297

Today is the first anniversary of Super Mario /v/orld. For the Anniversary, anon has received permission from the original Organizanon to prepare an update.
The major changes that were added are the resprites from /v/orld 2, bugfixes (keeping /v/ coins on death, overworld names working on hardware), and a revised final boss because it was still bothering me even after a year :^). Whether this is your first time playing or you felt like revisiting it, /v/orld 1 will be a fresh experience either way.
You can find the remastered update here - https://files.catbox.moe/njnn10.bps
And you can find the two original hacks at - http://longc.at/vhacks.html
Original thread: >>>/v/542792002

>> No.7368391

>>7363654
That's pretty fair.

>Fire glitches... ?
Been a bit since I played it, but I thought all the blinking sprites had to do with the fire sprites all the time? Like, too many sprites on every screen or something.

>> No.7368478

>>7368391
The fire in stage 1 is all background effect.

However it is true that in 2 player, there is a lot of sprite flicker, more than necessary. I think it may be due to that NES glitch regarding the sprite flicker bit that I read about on the NESdev wiki, because that could certainly explain the same thing happening in other games; and also why some games seem to go through their own sprite flicker routine rather than trusting the glitchy built in one.

>> No.7368669
File: 25 KB, 500x374, olivia_munn_g4.jpg [View same] [iqdb] [saucenao] [google]
7368669

>>7368478
> I think it may be due to that NES glitch regarding the sprite flicker
Yep. Besides only having 64 8x8 OR 8x16 slots for sprites, the PPU can only render 8 of those per line. The rest are disgarded. It is a very unfortunate limitation.
It wasn't even supposed to be this way! the PPU was supposed to fetch another sprite in an unused "render slot", but due to hardware implementation errors, it fails! woops....
https://wiki.nesdev.com/w/index.php/Errata#OAM_and_Sprites

>> No.7369173
File: 7 KB, 256x224, Super Mario -v-orld - Actual Art Edition [4chan Collab Hack]_00000.png [View same] [iqdb] [saucenao] [google]
7369173

>>7368297

>> No.7369683

>>7368297
Dang, I need to mail Organizanon anon back...

Do you want your fancy remastered update up there on longc.at too?

>> No.7369773

>>7369683
I.. have no idea. I didn't make it. I was just reposting it here after seeing the /v/ thread, since this is the romhacking thread and all.

>> No.7369780

>>7369773
I guess I should have looked a bit more carefully at the sections I copy-pasted. I completely forgot there was a "me" in there.

>> No.7370970

>>7369773
Well, I guess if he gets pissed about it, he can bug Organizanon and he'll probably tell me.

>> No.7371191

>>7368669
> Besides only having 64 8x8 OR 8x16 slots for sprites,


So that's why some games (like TMNT2) use the 8x16 sprites, (on top of saving space on sprite definitions and on saving CPU power) you can literally have twice as many sprites renderered on the screen at once.

I was wondering if there was something I hadn't think about regarding the gains of this system.

Anyway 8x16 is still a pretty shit system. If in your new frame you only need one 8x8 sprite that differs, you're going to have to draw 8x16 anyway and use the extra 8x8 space for a tile that's already there.

>> No.7371202

>>7371191
>If in your new frame you only need one 8x8 sprite that differs, you're going to have to draw 8x16 anyway and use the extra 8x8 space for a tile that's already there.
Yep. It's even worse than that though =p
It can only draw the next sprite tile sequentially, and you are forced to. You can never select odd numbered sprites, but, an interesting side effect is that you can use background tiles as sprites now.

>> No.7371212

>>7371202
like $00 is now $00 and $01 on the sprite table and $01 is now $00 and $01 on the background table.

>> No.7371356

f

>> No.7372986

Don't you just love when devs space saving techniques just backfire on your ass?

>spend an hour or so fixing some enemies sprites
>a lot of enemies are variants of the same looking one
>realize too late that some of them share the same definition
>meaning what I was fixing on one side was breaking the other side

Fucking hell, the worst part is that there is about 900 free bytes at the end of the bank used for definitions. Hopefully they don't have shared def pointers too.

>> No.7373041

>>7372986
Whoops

>> No.7373042
File: 255 KB, 598x598, iwata.png [View same] [iqdb] [saucenao] [google]
7373042

>>7372986
mmhmm optimization =)
...i guess try and make new types in the blank space and see what happens? you might end up having to separate existing types to "unshare" some code

>> No.7373575

thread is ded. new thread
>>7373559
>>7373559
>>7373559
>>7373559