Skeetendo

’Cause all games were better on the GBC

You are not logged in.

#151 2017-07-24 17:38:17

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,494/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Are you aware of the "sprite priority" bit for background tiles? Instead of telling sprites to appear underneath bg tlies, you tell bg tiles to appear over sprites. GBC only. It usually looks nicer since with the other method, you can't tell a sprite to appear above one tile but underneath another. It could be easily implemented by changing the "palette assignments" to include that bit (ie. "GREEN | $80").

So, your plan is to use 0x80 tiles instead of 0x60, which is why you want to use vram 1?

Oh, nice. I actually was not aware of that tile property, but that is extremely handy.

Also, the image I posted was 0xFF tiles not 0x80, so it would have to use VRAM1 for at least part of it regardless. And since putting half of it in VRAM0 and half of it in VRAM1 would mean the two halves would share tile IDs (and therefore break Gen 1's collision system) I'd have to rewrite that, too. And I guess I may as well do that at some point anyway, but it felt like it would be cleaner to just put all of the tileset in VRAM1 and then let the menu/text code set the attributes when it draws the text to mark that they are still in VRAM0. But I could be wrong. I haven't actually experimented with adding that yet, I'd just been trying to look over the existing code and attempting to figure it out enough to see how I could expand it (and now I'll have to do that again with your newly updated versions :P)


EDIT: I was basically wanting to do the same thing we used to do with Silver a long time ago, when HyperHacker made a "Big Tileset Hack" that didn't just port Crystal's system, but allowed all 256 tiles to be used. Well, his still required 0x7F to be a white tile and 0xFF to be a black tile for some things to look right due to laziness and not setting those routines to use tiles from VRAM0, but yeah.
oEZQ2x6.png

The example tileset that I linked before was obviously in normal order, not the order that VRAM would actually assign the IDs. But I tried to design it specifically with that in mind. The idea was to redo tileset headers to have 2 image pointers (or one and a null pointer, for smaller tilesets) so that you could save space by having multiple tilesets load the same tiles for 0x00 through 0x7F (primarily the nature tiles) and then have multiple different versions of 0x80 through 0xFF (there would be some overlap due to things like Pokecenters not fitting in the top half, but that would have the unique tiles for those areas, such as special buildings, etc).

41yXuzP.png

Last edited by Mateo (2017-07-24 17:50:37)

Offline

#152 2017-07-24 22:17:06

Drenn
Member
Registered: 2013-05-22
Post 57/61

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

So, as you know, the way the color hack currently works is it assigns a palette to each tile. This isn't how most games work - most games would allow you to reuse a tile with a different palette - but this was easier, and "good enough".

The problem that arises here, is that the byte which determines the palette is the same as the byte that determines the vram bank (and bg priority, flipX/flipY, etc). As such, with the current system, each tile index has a fixed vram bank, making bank 1 unusable... So, the code will need some way to distinguish "tileset" tiles from "other" tiles, because currently it doesn't care which is which. That would probably involve maintaining another memory block where each bit is "1" if it's a tileset tile (vram 1), and "0" otherwise (vram 0).

...Then again, that may not be necessary. If we can assume that the bg layer always consists of the tileset, then we can tell it to always use vram bank 1. However, the window layer will need to update the vram bank whenever it draws on top of the bg layer. In any case, you can no longer rely on the "tile index" mapping uniquely to the "attribute byte", which is an assumption prevalent throughout the code.

Edit: The "proper" way to fix this would probably be to do palette assignments at the tileset level. So, each "block" in the tileset defines the attribute byte independently. That would also have the advantage of allowing you to use Flip X / Flip Y. I don't really know how tilesets work, though. And that would be a major rewrite.

Last edited by Drenn (2017-07-24 22:25:42)

Offline

#153 2017-07-24 23:45:10

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,495/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Setting pal and xy flip at tileset level would be a good way to do it. It's what Gen 3 does, too. And it would allow more detail as well. I had thought about it, but assumed I could just wait.

Unless you changed it, didn't the battle scene just apply palettes to specific parts of the screen? Couldn't you essentially do the same sort of thing (and essentially what Gen 2 does) and have an "Attribute Map" which corresponds to the Tilemap, but instead holds/updates the tile properties instead of the tile id. Then when you write the textbox stuff to the screen, you could also just FillBox or whatever those areas of the AttributeMap with Pal 7 for VRAM0 and tell it to use the AttributeMap or whatever while that is active, then go back to the standard overworld behavior when you get rid of the textboxes and let it return to standard tilebased palettes  (which would of course have the VRAM1 flag set along with the background priority flag in the case of treetops and stuff).

Offline

#154 2017-07-24 23:55:58

Drenn
Member
Registered: 2013-05-22
Post 58/61

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Mateo wrote:

Setting pal and xy flip at tileset level would be a good way to do it. It's what Gen 3 does, too. And it would allow more detail as well. I had thought about it, but assumed I could just wait.

Unless you changed it, didn't the battle scene just apply palettes to specific parts of the screen? Couldn't you essentially do the same sort of thing (and essentially what Gen 2 does) and have an "Attribute Map" which corresponds to the Tilemap, but instead holds/updates the tile properties instead of the tile id. Then when you write the textbox stuff to the screen, you could also just FillBox or whatever those areas of the AttributeMap with Pal 7 for VRAM0 and tell it to use the AttributeMap or whatever while that is active, then go back to the standard overworld behavior when you get rid of the textboxes and let it return to standard tilebased palettes  (which would of course have the VRAM1 flag set along with the background priority flag in the case of treetops and stuff).

The window layer has two "modes". In battle, it uses an "attribute map" which would probably work with FillBox. In the overworld, it's tile-based - each frame, it determines the palette based on the tile index. This behaviour is controlled by the "W2_TileBasedPalettes" variable.

So, you may want to tell it to always use the "attribute map" method. That would be more efficient, too. But you'll need to account for every instance where it draws on the tilemap. In your case, though, you probably had to do that anyway.

Random note: due to the way it's implemented right now, glitch items with tiles from the tileset have the correct color. =P

Offline

#155 2017-07-25 00:34:25

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,496/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

So far, I haven't actually changed anything to account for that as I haven't used anything beyond the normal code for the color branch (although I did slightly modify the routine for loading overworld sprite palettes, so that instead of using 4 for random, it let all 8 of them be assignable and then used a non-existent pal number as the marker for "use a random but consistent pal for this sprite". Since I would need to assign some of the later pals to things such as Berry Trees the way they were in Gen 2.


But yeah, I guess in the meantime I'll be looking into some of the ways that Crystal handles things with its own Attribute Map, and looking into your new code, so I can see what sorts of changes I might need to make to get it to function similarly in order to pull off using VRAM1 eventually. (Side note: It would seem like going that other way you mentioned and setting attributes as part of the tileset data itself could actually allow for a ridiculous amount of tiles, since you could use the original tileset space in VRAM0, plus 256 tiles in VRAM1, and of course reuse them with different pals or XY flip settings. Talk about map detail! Haha. But I'm not actually trying to bother with that right now, 256 should be fine.) And obviously, before I start doing any rewrites of my own, I'd need to get the base code merged in and the inevitable conflicts with RedPlusPlus/Master resolved anyway.

Offline

#156 2017-07-26 03:53:47

Drenn
Member
Registered: 2013-05-22
Post 60/61

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

I just released the update, so you can try merging it anytime. If you have any more questions about how it works, now would be a good time, while it's still fresh in my mind. I wouldn't mind helping with the merge itself, either.

Offline

#157 2017-07-26 05:59:59

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,498/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

I saw the release, I'll definitely be looking through and seeing what comes up. As of last night, Danny was still offering to do the merge and send a PR, and since he offered and since he's been the one maintaining it in your absence, I figured that would go pretty smoothly so I'm going to work with him on that as needed. But I'll definitely ask you as well if things come up in the process, or after the fact when I need to make RPP-specific changes. Thanks!

Offline

#158 2017-08-03 17:17:15

erik19borgnia
Member
Registered: 2013-12-08
Post 32/32

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

I was testing with a friend and... The colosseum is actually pretty broken.
Trade link seems to work perfectly, but we couldn't battle in the colosseum.
It shows like a wild encounter and after beating the first pokemon you got "You win" and the battle closes, while the other keeps waiting for a response after going with the second pokemon.
Trying to go back in frozes the game.

Without that, the hack is awesome!! Keep going with it!
Erik

Offline

#159 2017-08-03 23:18:27

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,501/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Yeah, I know that other people have reported issues with battling in Link mode as well. I've got a few ideas as to which things broke it in particular, but I'll look into more thoroughly later, as there will be a lot of other battle-related changes going on while working on v3. Thanks for reminding me, though.

Offline

#160 2018-03-28 17:55:24

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,518/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Bumping this a little since this is probably the only active thread I still have for this hack right now. Wanted to show off just how far we're going to update things for v3.0. You will probably need to click "View Image" to see these in full size. And yes, there will be Day and Night.

Kanto during the day:
MdWejbQ.png


Kanto at night:
vqKe8qw.png

Last edited by Mateo (2018-03-28 18:17:40)

Offline

#161 2018-03-30 01:04:03

TyHawk4501
New member
Registered: 2015-01-09
Post 3/4
Website

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

*TyHawk appears*

Hey Mateo!! :) I'm making a special appearance on your thread! :)

I see the screenshots on your Red++ thread, pretty awesome from what I see so far! :) Keep up the good work my friend! :)

Offline

#162 2018-03-30 01:07:49

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,519/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Thank you! We will :)

Offline

#163 2018-03-30 01:16:04

TyHawk4501
New member
Registered: 2015-01-09
Post 4/4
Website

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Mateo wrote:

Thank you! We will :)

No problem! :) Awesome :)

Offline

#164 2018-04-24 21:11:06

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,535/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Slight update here. Johto mapping has been coming along nicely, and I've been working on getting Kanto events restored now that we're on the Polished Crystal engine.

Offline

#165 2018-05-01 15:28:21

Grey
New member
Registered: 2018-05-01
Post 1/3

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Hi guys, Im kinda new to rom hacks and loving how this old school hack is looking.

I was wandering if i started playing this would i be able to update to the newer version when it comes out or would i have to start again/re-download?

Anyone who knows just post to let me know, Thanks.

Offline

#166 2018-05-01 17:20:28

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,543/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

You'll have to start over. v3 changes too much to keep it compatible.

Offline

#167 2018-05-01 19:47:38

Grey
New member
Registered: 2018-05-01
Post 2/3

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Alright thanks, great work by the way.

would v3 be coming out later this year? or is there still a lot to be worked on?

Offline

#168 2018-05-01 20:16:34

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,544/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Hard to say how long it will be. We've got most of the remapping done, still need to do a few outdoor spots, the caves, and places outside of Kanto/Johto like Faraway Island. I still have a ton of events to restore. Most of them will go quickly, since most of the events in Red were generic NPCs that just talk to yiu or generic trainers, and those we can basically automatically convert. But the more complex stuff like for example all the events around the early game, that has to be manually remade in the new script system. How fast it goes will just depend on how much free time work lets me have haha.

Offline

#169 2018-05-02 23:12:59

Grey
New member
Registered: 2018-05-01
Post 3/3

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Totally get it, Can't wait till the release it's looking cool so far. Keep up the work i'll be lurking in and out till then :)

Offline

#170 2018-07-04 13:55:21

JulianoFdeS
Member
Registered: 2017-03-21
Post 26/32

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Do you intend to do Blue/Green/Yellow/Gold/Silver/Crystal ++ ?
I'm looking forward this 3.0 out, will it be your last patch?


+15 Years enjoying the very first Pokémon Generation, I never get tired, I always find a new way to do something different and make the whole journey worth again.

Offline

#171 2018-07-04 14:50:05

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,549/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

I have talked about setting it up to build Red/Blue/Yellow++ at some point (and honestly some stuff from Yellow is already getting included in Red). I won't be making GSC++ though, Rangi's Polished Crystal has that covered, and shares a universe with this hack.

v3 will probably be the last version for a while anyway. I doubt 3.0 will be the last one, I'm sure there will inevitably be bugfixes and the like because that's how things go, but I don't know of any major changes I'd want to include after all the stuff for v3 is in, at least for now. After v3 I plan to work on other hacks, some of which will use this as a base.

Offline

#172 2018-07-04 18:35:40

Ziko
Member
Registered: 2016-09-04
Post 21/35

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Mateo wrote:

I have talked about setting it up to build Red/Blue/Yellow++ at some point (and honestly some stuff from Yellow is already getting included in Red). I won't be making GSC++ though, Rangi's Polished Crystal has that covered, and shares a universe with this hack.

v3 will probably be the last version for a while anyway. I doubt 3.0 will be the last one, I'm sure there will inevitably be bugfixes and the like because that's how things go, but I don't know of any major changes I'd want to include after all the stuff for v3 is in, at least for now. After v3 I plan to work on other hacks, some of which will use this as a base.

I'd love to play a Blue version of this Mateo. Red++ is a gem of a hack and I'll most likely play it again when it drops. Right now, Crystal Clear has my attention.

Last edited by Ziko (2018-07-04 18:36:00)

Offline

#173 2018-08-02 09:49:52

SABREWULF
New member
Registered: 2018-08-02
Post 1/2

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

Can we will be able to fight Burried Alive guy in your mode? if yes than how? if no than why? and when u can add him?

Offline

#174 2018-08-02 20:20:14

Mateo
Member
From: The Sims 4
Registered: 2009-11-25
Post 3,556/3,578

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

No. This hack is not about creepy pasta nonsense, sorry.

Offline

#175 2018-08-04 02:58:02

SABREWULF
New member
Registered: 2018-08-02
Post 2/2

Re: [Red Hack] Pokémon Red++ - v2.4.2 Released

O i only came here to ask you can u add the strongest guy in the game but u said its nonsense. I so much wanted to fight that monster
Please add him  i believe not only me will be happy to fight him

Offline

Board footer

Powered by FluxBB