DSiWare Forum

I just post a MapMaker on the QR threat, but I'm very inrterested on your generator, maybe it can help me for my v1.1 =)

btw i want to add you as friend on my 3ds, also Discostew, I add your fc already. Mine is 2921-9808-6856

Alright, I put my FC in my sig, so you can add me if you want, I'll start adding people to my friends list. I never really used the friend system on the 3ds so I'll try it out. Oh and if you didn't see already, I made a cave generator and posted it in the QR thread.

I finally figured out MIDI to MML conversion with a little help from a free program called qmidistudio.

I made a simple little 2-track MIDI file in Reaper to test it out. It's an original song I wrote that I'm thinking of putting in the game I'm working on.

I had to tweak some of the MML, such as adding a missing octave setting at the beginning of the first track, then set the instruments correctly, then adding extra rests at the end of each track to get the timing of the loop right and then finally adding loop points for each track. It's also important to note that qmidistudio seems to like MIDI 1 files, but crashes when I try to open a MIDI 0 file type.

Well, I just ran into a stumbling block with my MM2 audio player. It seems that BGMSET has a bit more restriction than BGMSETD does. With BGMSETD, you give it a label, and the DATA lines afterwards get loaded up until the point of DATA 0. With BGMSET, you supply strings. But, it limits you on the number of strings variables you can supply, not how many string variables you can fit on a single line. I assume Petit Computer has a limit of 10 parameters with such functions, leaving 9 for actual data (the first being the song number to set the music into). A string is at max 256 characters, which means that the longest MML script can be 9*256, or 2304 bytes.

While most of my audio is under this limit, 2 of them are over. One being just barely over, and another that is over by 600 bytes. So, I have two options here. Either I find a way to trim both down to within the limit, or I default back to using BGMSETD, which means I can't use GRP files for holding the audio data. I will attempt to trim those songs down (while hoping to not lose quality), but if worse comes to worse, I will default back. Either way, I will release the audio player in due time.

I believe 8 soundtracks can be played at the same time. I accidently discovered this the other day when I didn't understand what they were mentioning about when I was setting the volume for one of my music, which I can now play my sound effects without stopping the music.

I believe 8 soundtracks can be played at the same time. I accidently discovered this the other day when I didn't understand what they were mentioning about when I was setting the volume for one of my music, which I can now play my sound effects without stopping the music.

EDIT: I think I misunderstood

I had thought about that very idea (but with using BGMSET instead of BGMSETD, as the latter doesn't have the problem I'm facing), but I also considered that the moment the BGMPLAY command is used, the audio starts playing immediately, which if I were to use multiple PLAY statements, they might not be synced. Now, if it isn't immediate, but are triggered at some point (like at the beginning of a new frame), then I see no real problems. I will have to test this at a later point.

I think I might have a solution (outside of your suggestion) for trimming down my songs. It involves the Default Sound Duration script, character "L". In all my songs, I have not used it (in that I do C16, C#32, etc), and on the song that was just over the limit, I used that in multiple spots that had a consistent set of notes that played at the same rate, which allowed me to remove the length off each corresponding note. That song in particular has been reduced by almost 400 bytes without a change to quality. Now, to attack the song that is over by 600 bytes to see if I can reduce that. If I really wanted to, I could use this optimization on all my songs to drastically reduce the overall size, but that isn't priority atm.

So, I'm toying around with a rogue like idea in my head. You know how in rogue like games you have that fog of war? I'm trying to figure out a way to have that in a rogue like type game I'm going to make. It would probably involve an array to keep track of the tiles you've seen, but how about your field of view? How would your field of view angle in different directions around corners and stuff? Oh, and to keep to the rogue like feel, I'm going to use ASCII characters.

Id just like to say two things: one. SALLY OPERATING SYSTEM will be posted wednesday. two. Morphtroid, is it ok if i use pblocks in my OS? i would not change a thing id just add a link to it in my OS and add u in the SALLY credits.

Id just like to say two things: one. SALLY OPERATING SYSTEM will be posted wednesday. two. Morphtroid, is it ok if i use pblocks in my OS? i would not change a thing id just add a link to it in my OS and add u in the SALLY credits.

Man, I'm suprised this tread is still going as strong as it is. I'm glad interest in this game is still going on after all this time

I had a question though regarding random dungeon generation. It's basically an area I have little to no idea of how to handle and I was hoping to get a nudge in the right direction.

If anyone's played the Windows 3.1 game Castle of the Winds, I'd like to make my own version of it (with a rule set closer to that of DnD, but I'm still tossing around my own elements) but what I really liked was the style of room generation there in. Would anyone be able to guide me to an algorithm similar to what was used there? (I think the Mysterious Dungeon series used a similar method, typically larger rooms seperated by extended coridors, although I may shorten distances between each)

After just a quick think about how you might do it, I came up with the following algorithm:

1. Generate a number of rooms to have in your dungeon/on the current dungeon floor (between some minimum, say 2, and some maximum, say 5)
2. For each room, randomly generate a length and height (again, with minimum and maximum values). This will give you rectangular rooms, like Nethack.
3. Randomly find an (x,y) co-ordinate for each room, ensuring that rooms don't overlap (or I guess they could, if you wanted). For the sake of convention, you could take this (x,y) co-ordinate to correspond to the upper-left tile of the room, or any other convention you decide on. You now have a bunch of rooms and need to connect them.
4. This could go a couple of ways. Perhaps the easiest way is, for each pair of rooms, designate an edge tile (on in each room) that will lead to a corridor connecting it to the other room in the pair. Then all you need to do is generate a corridor between those rooms. You could do that with straight lines (obviously adjusted for the fact you're on a square grid) or, to make things more interesting, you could introduce some random branching. Starting at the entry/exit tile of 1 room, generate the next tile in the corridor. You know what direction you need to head in to get to the other room (i.e. that corresponds to a particular tile that is the 'closest' to the entry/exit tile of the other room). Randomly decide if you will extend the corridor into the most direct tile, or use one either side of that (e.g. there is a 50% chance of the 'direct' tile being used next, or a 25% chance for each of the neighbouring tiles to be used instead). This will give you a wiggly path that will connect each entrance and exit room.

Of course, you could make the algorithm more advanced by not connecting every pair of rooms, but instead just making enough corridors that all rooms are accessible, etc. However, I think the basic algorithm above would work fine.

I used to have a blog link here. I'll put it back up when the blog has something to read.

i'm making an announcement! i'm writing a story for a zelda fan fiction. i shall call it "Zelda 3: The Story of Link (title pending)". i'm halfway through writing it. when i finish, i will modify it with the series timeline so it fits in perfectly. after it is finished, i have plans on PROGRAMMING ZELDA 3 INTO PETIT COMPUTER(now feel free to crap your pants). don't worry, it's not one of those crappy fan fictions online, i've had MANY people read over my progress(half of which, zelda fans), and most of them like it.