• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Forum moderator applications are now open! Click here for details.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Tool: DNS - Day, Night and Seasons

prime-dialga

pure darkness
28
Posts
14
Years
  • Seen Jul 8, 2014
sry, it isn't possible to change the wild Pokemon with the current tool and i haven't the time to implement it in a future version.
 

thizzman

PKMN rom maker and hacker
32
Posts
11
Years
  • Age 33
  • Seen Jun 9, 2022
Das ok, You made this amazing tool in the first place (;
It works fine with everything else!! (:
 

prime-dialga

pure darkness
28
Posts
14
Years
  • Seen Jul 8, 2014
@SincerestTester
have you extracted it from the archiv-File and is the .net-Framework installed?
 
6
Posts
11
Years
  • Seen Feb 2, 2014
Oh I had in archive derp sorry haha. Also it says there's a previous system installed yet I never did install a previous day and night system?
 

dkp

18
Posts
11
Years
  • Seen Mar 15, 2016
First off, I'd like to thank you prime-dialga for this tool. And you know, everyone else involved at some level in the creation of this tool - interdpth, Dragonflye, Jambo51.

I would like to say though, that after so much searching I've found nothing in the way of guide to get seasons working. I'd really like to make a Tutorial, honestly, but I myself don't know much beyond getting the header inserted. I'll walk you all through my process so far, though, which gets the RTC and DAN installed correctly (or at least, functionally). I'm extremely far from experienced, actually, so there's quite possibly a number of errors in my method.



So first off, make sure the tools and everything are in place. Make sure windows is updated to the latest version, that you have .NET framework installed, that the program is unzipped and the program executable (.EXE) is in the same folder as the other folder. That part shouldn't really need be explained, but can save some time and headaches if you're sure this is right.

Make sure that pretty much anything else you want to with the hack is done. My understanding of patches and their like means that they have a set location where they insert or change date; inserting the DNS before patching can lead to parts of the DNS getting overwritten, and, worse case scenario, the rom being rendered nonfunctional.

Next, back up the rom you're going to use.

Open DNS, click update whether or not a update is likely. Then click File>Open , and navigate to and open the file.

Next, using a free space finder - say HackMew's FSF tool - open the same rom. Back on the DNS program, right beneath RTC it should say something like "Offset(needs 0x### Bytes)".

To be safe, on HackMew's FSF type the number represented by ### into the lower right box, which should convert the number to a decimal.

For safety reasons I round this number up to the next highest power of two. So if the rtc needs 3D0 (976) bytes, I round it to 1024. Later the DAN I believe needs like 300 bytes so I rounded that up to 512. (powers of 2: 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192....)

On HackMew's tool I then type 1024 into the box next to "needed bytes"; the skip interval then should update automatically (or at least after pressing tab).

The free space byte, at least as far as I'm aware for the pokemon gen III games, is FF.

The default offset to search from, for me at least, is 800000. Based on my knowledge, which is limited, it shouldn't really matter as long as the freespace byte is correct and you have enough room, but I could be gravely false here. My lack of understanding here is why I round up earlier- fear.

Now, finally, I click "Find". It should generate a number. I then click the copy button, go back to the DNS program, and replace the default offset with the new number. Then click "insert RTC". Now you should have the RTC installed.

Next, alter the palettes for the DAN as you see fit; I like the default setup, so I go with that. But generally, the time dials correspond to the times defined in the quadrat to the bottom right. For a 24 hour clock, which the DAN uses internally, 0 is midnight, 12 is noon, 23 would be 11 at night. To get the proper range, add twelve to you PM times (0 to AM). The default times should be okay (=work for me), but for more realism you should adjust them accordingly; twilight lasts a long time under the default circumstances.

The radio dials (circles that can be selected but not others) control what set of palettes you're using, whether OW (overworld), background, sprites, attacks, etc.

Before you go much further, you need to already know if you've done something that would alter the the way RAM is read and interpreted by the game. If you haven't or don't know (in which case you more than likely haven't), the default value seems to work. Otherwise, adjust to an address the game isn't using, ideally with a free byte afterwards as well (for the seasons).

Going through the same process with the RTC, to insert the DAN, first I type the needed bytes into the FSF to convert, change the values accordingly (and probably hypercorrectness (based on false assumptions) I also round up to the nearest power of two so things are aligned properly), and get a new value. I copy this over.

Pasting the value into the box beneath Offset, I then double check that everything is right, and press "insert DAN". For me, this is about as far as I can prove to have gotten things to function.




So at this part, I have the DAN installed. Good, fine. I can open it up and play , everything's fine, the battles work, it's dark when it's dark, etc.


But now I get the part I don't understand. I do the same thing to get free space for the seasons-header, and find the next interval (thanks to HackMew's tool), and put that into the header offset box. I check that the RAM offset for the status byte is one more than the DAN, change the season months so they line up how I want them to (Kyushu (=Hoenn) is ecologically the same as where I live, minus monsoon season, and Kanto is easy to research) and insert.

So at this point I should have the seasons half-installed with a blank header, yeah?

At which point I've tried the built-in tool, which should load the (blank) header I've installed. If I used this accordingly, I'd click "create new one" > "add new set" and put all the proper tileset offsets for each season in place before writing to rom. But this requires that the tilesets for winter, summer, and autumn for the "normal" tileset are already entered and you know where they are. If you're trying to create seasons as opposed to import them, say, at then end of the file and repoint the header, I'm lost - and I don't even know of a tileset to import anyways. Actually, it would be nice if someone were to point me to a Kanto and Hoenn

Evidently AdvanceMap 1.9.5 has support for this DNS. It's a beta though so I don't expect much. So I open it up, opening the game with it. Already I see the new tools appearing. I open up the map I want to create seasons for (arranged by tileset for lack of redundancy; I'm not creating new seasons for both Petalburgh and Littleroot, for example).

That should be right, right? I go tools>season editor. It found my blank header. Pretty cool. So I click create.

Here I create something for tileset 0 (which all the maps upto tileset 12 seem to use) and click okay. I tend to press save instinctively, so there's that. then I go "create new tileset" and when I start with zero with Pallet town or Petalburg loaded, the dialog comes up with a dial hardset to tileset 1, season defaulting to normal (I change this to Autumn) and Options link block data and behavior data.

I tend to click those; but no matter what, regardless of whether I do or not, I end up with something non-functional. I end up with screwed up tilesets - usually all of the tiles for that map shift around, only load partially (like only the bottom layer of a block), or it duplicates the default tileset in a way that, say for Petalburg, gives me two sets of pokecenters and no hedges. Or better yet, utter blackness. If I do it for tileset 1 (which is the 2nd for that map) exactly the same thing happens.

So what's the big deal? Just import corrected tilesets, palettes, etc, right? Exporting maps, blocks, pictures, palettes, and everything from a clean rom works (or seems to), but importing does absolutely nothing at best and corrupts clean-looking (actually duplicated) tilesets at worst. If I use an expanded rom (expanded with FFs via a patched XSE), it actually just crashes advancemap.


So, where does the problem lie? Is it me? Is it a limitation of the DNS? Is it advancemap? A little bit of guidance would be appreciated - and it seems there's nothing as far as a guide goes for beyond this, German (which got me this far, but as it's not my native language maybe my comprehension is simply too poor) or otherwise. Everything on here when I search for seasons looks to be an unanswered question, something about an asm routine, or correcting a problem that simply isn't a problem anymore. Anything as far as a tutorial for tile editing goes only teaches about replacing an existing functioning tileset, which is nice if you intend to do everything from scratch and make a brand new everything, but not if, say, you're making seasons for a personal (I've lost track of everyone I'd have to credit to redistribute, sorry) aesthetic hack (you know, play a decapitalized DNS Emerald or Firered with GenIII's slightly derpy-looking Torchic replaced with gen V's for nostalgia without annoyances).
 
Last edited:

prime-dialga

pure darkness
28
Posts
14
Years
  • Seen Jul 8, 2014
The season-System has some bugs (and maybe the tool to). I hope i can fix them in the next version and add a better way to add seasons.
 
534
Posts
11
Years
  • Age 26
  • Seen Jul 24, 2023
How about the thing where your tiles change to a certain tileset when its night?
 

prime-dialga

pure darkness
28
Posts
14
Years
  • Seen Jul 8, 2014
maybe you can do this in a future version of the Season-System but it isn't planed for the next DAN-Version
 

Hacker Bisharp

Bug reporter
332
Posts
12
Years
  • Age 26
  • Seen Aug 28, 2019
So, you are working in a new version.... awesome!
Which will be the new feature?
 

kearnseyboy6

Aussie's Toughest Mudder
300
Posts
15
Years
  • Seen Jun 22, 2019
This tool is simply amazing :) ! Thank you and thanks for keeping me interested in making my hack!

~~Steve
 

dkp

18
Posts
11
Years
  • Seen Mar 15, 2016
Find the offset you installed it at, and replace it with empty space. I believe it's 00 for Ruby/Sapphire, FF for Firered/Leafgreen, and both-but-just-use FF for emerald. But it looks to me like you failed to actually install it over free space; the tool doesn't (seem) to do that for you. Use HackMew's FreeSpaceFinder (FSF) to insert it at the values it returns. Starting at the 0x800000 offset seems to work okay on a clean rom. Many if not most hackers using the tool will have scripts, pallets, music, or tilesets or such there already, though, meaning there's good reason not to have the tool start there by default.I hope you made backups because it looks like you might have ruined that rom.
 
19
Posts
13
Years
  • Seen Jan 21, 2021
DNS stopped working for me. I tried uninstalling it, and re downloading it, but I can't get it to work anymore. It says that it stopped working. It worked before, but now just stopped for no reason.
 

dude22072

Pokemon master man
22
Posts
16
Years
  • Seen Sep 17, 2013
Whenever I launch the program I immediately get "DNS has stopped working. Windows is checking for a solution to the problem". I've tried Compatibility mode and Running as an Administrator. Nothing fixes the problem.
 

prime-dialga

pure darkness
28
Posts
14
Years
  • Seen Jul 8, 2014
have you extracted all the files from the archiv and installed the .net-Framework?
 
Back
Top