Post subject: Dragon Warrior Monsters (need help with luck manipulation)
Joined: 6/7/2006
Posts: 53
Since I note this forum has yet to discuss this game, I might as well come up with some ideas in the hopes of seeing a TAS of this game eventually. Even if it's done by me. (I'd be more likely to run this game first than MMBN2, the other one I hinted at. Although I'd probably wait until after doing a live-console run of this game, which I'm in the process of planning and which inherently has to use a more complex strategy.) I'm just hoping the 'random dungeons' element of the game won't make emulator movies desynch like mad. Now, some people are probably aware that a Japanese run of this game was accomplished. For those that don't, the details of that run are at http://dq-x.com/dqmta.htm. Unfortunately, to my knowledge, there's no video of the accomplishment. (It was reported the total time of that run is 2:03.) From what I was able to discern by putting the page through a Babelfish translation, their final party is KingLeo, Balzak, and MadGoose, and their Starry Night strategy seems to abuse the move LureDance. In fact, a LOT of their strategies rely on abusing moves that prevent the enemy from doing anything. While their final strategy is admirable, I personally feel that it fails to be optimal. Part of the reason is that they rely so much on random tamers wandering in the gates. I'll take adjustments on this, but what I was thinking was a party something like Grizzly, Reaper, and DanceVegi. Grizzly and Reaper have fairly fast attack growth (more importantly, they can be bred really early), and DanceVegi learns LureDance naturally as well. The advantage of DanceVegi over MadGoose is that DanceVegi can also learn PalsyAir, by having FireWeed as a parent monster. And it turns out two of the final boss's three monsters can be affected by PalsyAir (MetalKing's the only no-go, and there's other ways of taking IT out). In fact, it is the rare monster indeed that is immune to PalsyAir, and of the monsters before Starry Night, I believe none are immune to both PalsyAir and LureDance. With a little (forced) luck and the right approach, I'm convinced that we can ignore (or close to ignore) worrying about the resistances of the player's monsters and just stop the enemy before they can do anything. One other thing I'd like to note quickly. Unlike some other RPG runs that manipulate critical hits and the like, I feel that forcing critical hits (which ignore defense in this game, a potentially more deadly outcome than simply double damage) constantly is suboptimal. Instead, I'd recommend the skill EvilSlash, which acts as an automatic critical (damage-wise - there's no critical hit message with this skill) if it hits, though I believe manipulating around the lowered defense (so attacks go after someone else) might come into play. While I try to come up with a more detailed plan, and possibly modify the final monster set, I'll let others share their opinions here.
Joined: 6/7/2006
Posts: 53
Okay. I haven't established the gate order that would need to be visited for a TAS of this game, but here's the monsters I foresee getting: -Golem -Dragon -FaceTree -Gigantes -PillowRat -Stubsuck -Goopi -Spooky -EvilSeed -Anteater -BoneSlave -GiantSlug If Gigantes cannot be recruited from the Well gate (where you fight one as a boss), then getting either Gremlin or BattleRex, plus MadKnight, will be done instead. Let me explain their uses: -BoneSlave is used to open up the Well gate, as any monster with an electrical skill (like BoltSlash) can be used to open it. -If Gremlin or BattleRex is gotten, they are used to open up the Bazaar gate. I believe the Japanese strategy detailed in the link in the last post uses Dragon for this, but I need Dragon elsewhere. -GiantSlug will only be gotten if I find I cannot manipulate when encounters occur, or if the minimum possible time between encounters is too long. This is one of the few games with FORCED levelling, and I plan on using Metaly monsters in the Well gate to speed it up dramatically (it is SLUGGISH otherwise), so GiantSlug and the Whistle skill could be put to use to speed up levelling. -The remaining monsters are used to get my final team, paired up in the shrine as follows: ==Anteater + Golem = Grizzly ==PillowRat + Stubsuck = HammerMan ==FaceTree + Dragon = FireWeed ==Goopi + EvilSeed = Facer ==FireWeed + Facer = DanceVegi ==Spooky + either Gigantes or MadKnight = Reaper ==Grizzly + HammerMan = an improved Grizzly The reason for the extra breed in the case of Grizzly is that it allows for Grizzly to learn EvilSlash (so I don't have to manipulate critical hits). This is also why Gigantes is preferred in getting Reaper - the closest skill MadKnight can learn is Massacre, which needs its own manipulation to prevent disaster. An extra breed with a stronger Zombie-family monster may be helpful for Reaper, but I don't think it will save enough time in the long run. My ultimate plan is to be able to have all of this in place before the Gate of Anger, which I believe is possible. Would like feedback on this setup.
ventuz
He/Him
Player (123)
Joined: 10/4/2004
Posts: 940
I have 2 cartridge of this game, but I'm no good at this game. Sorry if I'm not any help to you. But I'm interested to see the run. There's also on-going discussion about this game on SDA.
Joined: 6/7/2006
Posts: 53
Yeah, I'm aware of the SDA discussion. I'm actually part of it (as I use a different name here than the one I use on SDA). Anyway, what I've been trying to figure out so far is how manipulatable this game is. First up is monster manipulation. I don't recall, in actual play, ever running into a situation where I get one random encounter the very next step after a previous random encounter. I tried looking in the memory viewer for some ideas, but I'm not very good with that tool yet. I am convinced that the data for when to cause a random encounter has to be somewhere after position 0x8000 (everything before that is ROM - I figure on what I'm looking for being in RAM) and I'm guessing it's after 0xC000 (the spots between that and the ROM section are VRAM and SRAM - this part starts the actual RAM). I'm bracing myself for a Phantasy Star III-type situation, where I can only manipulate how long it takes between random encounters. Since I don't see anything on the memory viewer in the emulator tool FAQ section of the site, I'd like some help with this. Also, upon further review, I'm probably going to drop either Grizzly or HammerMan from the list. That, or I'm going to use Grizzly first and then drop him in favor of HammerMan later. I'm not going to breed the two together later - that wastes time IMO.
ventuz
He/Him
Player (123)
Joined: 10/4/2004
Posts: 940
Interesting, I'm going to try help finding useful memories with BGB emu. Which are you looking for specific? The memory viewer, they are just view the current value within game, it doesn't search.
Joined: 6/7/2006
Posts: 53
The kind of thing I'm looking for is values where, when a certain frame or movement point is reached, moving another step will cause a random battle. Or if it hits a certain value at the last frame of movement, a random battle occurs. You can only move about three, maybe four 'squares' in a second in this game at most, and that's if you don't change directions. So if it's a step-based counter and not a frame-based one, we may have issues. There's a laundry list of other luck manipulation things to worry about later, but for now I'm mostly concerned about the possibility of manipulating when battles occur. I figure on this being the most difficult manipulation. (Because it'd probably be the only one where a brute-force manipulation approach, the kind I'd probably be doing as a novice at tool-assisted gaming, would be least likely to work.)
ventuz
He/Him
Player (123)
Joined: 10/4/2004
Posts: 940
It's steps count AFAIK, but I can't locate address for that... But I found that you can change step count from frame based during the battle screen. For example, if you close battle screen at frame 3000, you might have 10 steps before another battle, but if you close battle screen at frame 3001 instead, you might have 20 steps before another battle.
Post subject: Japanese website with a lot of information
Joined: 10/8/2005
Posts: 16
Location: Quebec, Canada
I've found a japanese website with a lot of information. Yet, babelfish can only go halfway... Perhaps someone else who understand this can put this info to good use. Inside: - Map generation - Portals randomization - Battle calculation - Foreign master appearances calculation - Enemy appearance chart - The way critical strikes are calculated etc. http://www.geocities.co.jp/Playtown-Dice/6769/dqmon/ With this information, someone could create a very nice viewer which could show the information at any moment (every frame). I've started mine, but I can only have hp,mp, stats and skills yet. --------- Update: I managed to get the maps layout, current position and portal position. I've made a small viewer, working, but not perfect yet. Trying to locate items and foreign trainers now. Findings: I don't know if any of this makes sense for anyone else... The offsets are moving everytime the emulator is closed/started. Using an outside memory viewer, I start by finding the hp in battle (monster #1) and the map starts 87485 bytes (155BD in hex) after that offset. Current position is 27 bytes before the offset, and portal position is 32 bytes after the map start offset. It's a value between 0 and 15 (F). The map is 16 bytes long (4 x 4). In hex, the first part of the byte serves for map type (the value must be divided by 16).
0x ┼  1x ┬  2x ┴  3x ├

4x ┤  5x ─  6x ┌  7x ┐

8x └  9x ┘  Ax │  Bx ↓

Cx ↑  Dx →  Ex ←  Fx (nothing)        
Sample: Current Pos: 8, Portal Pos: 5, Map: 60 70 60 70 30 40 30 40 30 40 30 40 80 22 23 90 would give
 ┌ ┐ ┌ ┐ (6x-7x-6x-7x) 

 ├(┤)├ ┤ (3x-4x-3x-4x) (Portal Pos)

[├]┤ ├ ┤ (3x-4x-3x-4x) [Current Pos]

 └ ┴ ┴ ┘ (8x-2x-2x-9x)
Joined: 10/8/2005
Posts: 16
Location: Quebec, Canada
Alright, here are some of offsets (for the memory viewer). Map C940 -> C94F Current Position C925 Portal position -> C960 Current map level C939 (0 based, so for the real number +1) Number of levels C93A (last is the boss, so for the real number -1) # of steps before the next battle CA3A Note Mountains = 1 step, Forest = 2 counted steps for 3 walked steps, Plain = 3 counted steps for 5 walked steps Foreign Trainer I don't have much info, but addresses C92D will be 0 for soldier, 4 for monk, 5 for mage, 6 for bard and 7 for shop. Address C92E will count the number of steps required (200) to set C92D to 7. Will enemy join Friendness DB83 (starts at 10, increase with items or healing up to 1600) (2 bytes) Difficulty to befriend DB85 (0 = always join, 7 = never join) The formula is a bit harder to describe, I could try to formulate it if required. Other stuff Gold CA4B Classes done CAB4 (G = 1,F = 2,E = 3,D = 4,C = 5,B = 6,A = 7,S = 8) Battle information Everything start at DB9B Order Level of ally 1, Level of ally 2, level of ally 3, level of enemy 1, ... Then Hp of ally 1, Ally 2, etc. Values to be found there Level, Current HP, Max Hp, Current Mp, Max Hp, Str, Def, Agi, Int, Wild For the kind of monster it is in battle DC3C In Battle Skills starts at DC65. Skills are one after another, then go to the next monster. Feel free to add any other discoveries...
Joined: 6/7/2006
Posts: 53
Silas: I'll need some time to look those over, but a big thanks regardless. Anyway, I have NOT abandoned this project. However, I've been determined to do a live-console run first, and that just went through ANOTHER strategy revision. So I'm going to revise my tactics here. Monster #1 -MadCat + Stubsuck = HammerMan -HammerMan + Golem = Grizzly Monster #2 -Spooky + MadKnight = Reaper -Reaper + Putrepup = improved Reaper Monster #3 -EvilSeed + Dragon = FireWeed -FireWeed + Facer = DanceVegi Add in getting BoneSlave and GiantSlug, and we have just 11 monsters to worry about. With four of them being gate bosses, I think this is about as low as we can go. The second breed would probably occur at 20+ for each monster involved, while I used level 40 as the level of all the final monsters.
Joined: 10/8/2005
Posts: 16
Location: Quebec, Canada
I tried to go for a run of the game, but I still have a lot of catch up to do with quality and it's still at the beginning. Still trying to make a good tool to help. I've done 2 screenshots of it, in it's current state. Perhaps to give ideas to others or inspire some other programmers to help TASers. If I can make it good enough (that don't require to search the main addresses), it might actually be useful. http://pages.infinit.net/silas/dwm/1st.jpg http://pages.infinit.net/silas/dwm/2nd.jpg
ventuz
He/Him
Player (123)
Joined: 10/4/2004
Posts: 940
you're building that tool? amazing!
Joined: 10/8/2005
Posts: 16
Location: Quebec, Canada
I tried my own little attempt at it. Here's my WIP up to class F beaten: http://dehacked.2y.net/microstorage.php/info/4873/Dragon%20Warrior%20Monsters%20%28US%29.vbm I don't have anywhere near the skills or patience to do a perfect run, but I hope it can help to do a good run later. After that, trainers start to appear, so I'll try to get a lower level monster to be able to get a male spotking from a trainer. After, I plan to get a lava man and ice man for a female gold golem to breed a gold slime (to have at least a rare monster I guess).
Joined: 10/8/2005
Posts: 16
Location: Quebec, Canada
I managed to find the way to make the tool stable. It's kinda funny to hack a program with the source code. Gameboy Games (and GBC too) use 16 address maps of 4096 bytes (1000 hex), from 0000 to F000. This address map array allows direct access to all of the data used by the game. This array is located at address 7579680 (0x73A820). Every 4 bytes is a pointer to the real address in memory. I'm pratically sure it's the same address for all the GB and GBC games. This mean that the C000 and D000 address in memory can always be read from 0x73A850 and 0x73A854. What's the use of this??? For DWM, this means that I don't have to search for addresses anymore. The tool is now stable and could be used anywhere as long as it's the same version of the VBA running. So, I only have to check if I can give the program here, if I need to provide source code, if I need to code it in a different language and things like that. I'm now adding features while checking how I can give the tool. Features I have now: -Allies and Enemies Battle Stats -Current Map layout -Current Map Enemies and stats -Steps before next battle -Min and Max normal damage done -% to catch a monster -Foreign trainer kind if it appears on the next map I'm trying to find the addresses for the positions and kind of items and trainers the map.
Joined: 6/7/2006
Posts: 53
It's still going to be some time before I attempt anything emulator-related on this game, judging by the fact I just spent a lot of time trying to think of a team that can get through Starry Night in REAL time.... However, you should ignore the previous team I had developed. Why? It turns out that the spell "Defeat" can affect two of the three members of the final team, and EvilSlash handles the last one. ("Defeat" can probably be used in numerous other places as well.) Since stats are less of a concern in TASes, an entirely new team will have to be developed from scratch. More to follow. Edit: Okay, here's monsters that have the Beat spell, which becomes Defeat at higher levels: -DeadNoble -Blizzardy -EvilPot -Gophecada -Metaly -Mimic -Mudron I personally think DeadNoble is right out. Metaly's probably right out too, considering how long they take to level up. Considering the stats and resistances of the rest, I'd say either Blizzardy or Mimic is the best option. The best way to get Blizzardy would probably be breeding any Bird-type monster with Teto's IceMan, which can be gotten after E-class, with the second-best way being catching a wild Metaly. For Mimic, your best option is breeding a Material-class monster (anything except JewelBag) with BoxSlime. As far as EvilSlash? The list is bigger: -Armorpion -BattleRex -Coatol -Gigantes -HammerMan -LizardMan -MadDragon -Mummy -RogueNite Based on level-up speed, I'm seeing HammerMan, Mummy, or RogueNite as the best choice. I would have to say HammerMan. I recommend a monster with LureDance or WarCry as the third monster. Here's some examples: LureDance: -DanceVegi -MadDragon -MadGoose -Mommonja WarCry: -EyeBall -FangSlime -GulpBeast -Trumpeter -Yeti WarCry takes a bit less effort to get because it doesn't have an Agility requirement (I don't see a high Agility as required - you can just manipulate the first attack to have the effect you want). The reason I suggest it is because, of the crucial enemies (all fights in S-class, the three boss fights in Gate of Reflection, and all of Starry Night), I could not find one that was immune to both Defeat and LureDance/WarCry. If only I could find information on that second boss in the Gate of Reflection...... because that one's going to be a real problem AFAIK. I'm going to assume it's immune to Defeat, but is it immune to LureDance/WarCry? My suggestions: Monster #1 -Dracky + Teto's IceMan = Blizzardy Monster #2 -MadCat + Stubsuck = HammerMan Monster #3 -Anteater + Golem = Grizzly -Grizzly + Gremlin = GulpBeast For Monsters #1 and #2, I suggest a rebreed with another monster of the same type right before dealing with S-class (they should be level 20+ by this point), in order to just make sure they have enough stats to go through Starry Night. Especially monster #2 - HammerMan doesn't get a whole lot of HP.
Post subject: Update on the program
Joined: 10/8/2005
Posts: 16
Location: Quebec, Canada
I've managed to get if a trainer is on the map and where. I've also got all the items and their relative positions on the map too. Haven't found the type of trainer on the map, coming soon. What could be the next step? Should I release the prog as it is or try to get the full map graphics? For the fun, here are 3 screenshots with the new features http://pages.infinit.net/silas/dwm/2-battle.jpg http://pages.infinit.net/silas/dwm/2-map.jpg http://pages.infinit.net/silas/dwm/2-map-2.jpg I haven't progress on the run (since it's not competitive, but more to test the program). Frosty: I'm relieved that you are still trying to speedrun the game. Your run will probably be the major reference if a tas is done. Also, thanks for your team formations, they will help me greatly if I ever try to get a higher quality run. I'm still far behind with this thinking in mind. (I'm still trying to find out if I'll be able to get a GoldSlime only with trainer monsters and if it's a good monster to have) Might be if I can level it with a couple of trainer's metabble or metalking (?)
Joined: 6/27/2007
Posts: 137
Location: Germany
hey FrostyTheDragon^^ Did you now Cancel your DWM TAS or not? I really like to help you xD Imho DWM is the best GBC game out there... Also the other DW's and DWM's are great (atm I play Dragon Quest Monsters - Joker for the DS in Jap xD) @Silas Hmm... A Goldslime from foreign Monster Masters monster... I think a easy way to do this would be: -Catch a Lavaman -Catch a Iceman -Catch a Spotking After that Breed Ice with Lavaman to get a Goldgolem. And then Breed Spotking to get a Goldslime. The problem is... A Spotking can earliest be found in the Judgement gate. Allthough Foreign Masters can have one when your team Level doesn't get to 19. (Team Levels 1-18). A IceMan can be found by a Master with Monsters between 19-38. And a LavaMan with 39-58. Atm i only have the stats from the IceMan XD ( http://pages.infinit.net/silas/dwm/2-battle.jpg ) Okay... I hope it'll help you^^ Good luck!
Joined: 10/8/2005
Posts: 16
Location: Quebec, Canada
It's nice to see that there is some interest in the game. I'm currently redoing the tool with something which could be given to others in script/source code. It's going well. I had to restart my run because of the new VBA version, but I'm still trying. I've also did a script to see all the available maps before going in a portal. It takes me about 1/2h per portal to manipulate, but it's worth it. With this, I'm able to get Foreign Masters as soon as Villager's or Talisman's gate. The probability is really low (about 5%) but since it's controled... That way, I can get a Spotking. My problem right now is controling battles (I'm trying a script to get min/max damage, but no luck yet) and getting enough food without taking too much time. I can control luck for catching a monster a little, but foreign master's monsters need a lot of food to satisfy. Foreign masters seems to be the way to go to level easily, catching 3 monsters from them and the next monsters that can be caught will be on average 6-7 levels higher. Even though it would be fun to have a gold slime, I'm thinking it's leveling too slowly to be of some use. FrostyTheDragon is way ahead of me in the thinking of what monsters is good to finish the game. He might not include the foreign masters in his strats. My idea right now would be to manipulate maps to get the meat and trainers and catching up to a metal king with 2 other lvl 50 monsters. What will take time will be to check different options and paths to see which is the best. Let's hope we have some feedback by others who are interested in the game.
Player (74)
Joined: 12/20/2006
Posts: 154
I'm interested in the game, but when I tried to help with the run at SDA I didn't really help very much. I don't know what else to add besides just a "good luck."
Joined: 6/27/2007
Posts: 137
Location: Germany
Hmm... A good Monster imho would be "Grizzly". It easy to make, doesn learn some good attacks and has a great Attack Boost per Level (between 15-20) Also a Unicorn is good. It has pretty good stats and learn all the good Healspells. The Blizzardy idea is also good. I ALWAYS breed my Dracky with Teto's IceMan to get on. It levels extremly fast and has in High levels very good stats. (it learns also teh Death spell...) @Silas sometimes a Nugget is everything what a Foreign Monsterf needs^^ But with only a Nugget it depends really on Luck if you get it... When I play on VBA... And i meat Master... I save per Savestat and begin the battle... When that Master has a Monster I need I save again and load that save until i get the desired Monster^^ (but that is pretty unusable for this Speedrun...)
Joined: 6/27/2007
Posts: 137
Location: Germany
sry for doublepost... Hmm... What do you think is a good time to complete DWM? I really don't think it is doable under min. 5 hours... that one thing in the first post with the completation in 2:03 is for me just... well... Are they kidding? this can't be true XD There isnt even something like: - Lv. of the Monsters that he used. whatever XD Hmm.. what is your goal FrostyTheDragon?
Joined: 10/8/2005
Posts: 16
Location: Quebec, Canada
I don't have any estimate yet, but seeing that I don't have to level too much and that I manipulate maps at will, it will be way below 5hrs... Probably the 2h isn't too far fetched. Might even be below that... Prepare yourself to see a lot of trainers, ribs and sirloins, and a lot of 1 room maps. Small question, is the bard trainer worth it? I can get one on demand, but I don't know if the +20 to the lowest will mean something if I change often of monsters with the trainers.
Joined: 6/27/2007
Posts: 137
Location: Germany
Hmm... I dont know. But everytime I battle this Bard Trainer it raises always my MP XD btw. is this first WIP luck Manipulated? hmm... Do you have a route or something? I don't think you have the time to do all the Gates.
Joined: 10/8/2005
Posts: 16
Location: Quebec, Canada
For my the first wip, I was beginning to learn how to manipulate the battles and maps. By the end of the first wip, I was manipulating the maps to get trainers and food. I also manipulated the luck a bit for the monster catching and a bit with massacre. Anyway, I'm still very far from being able to do a publishable quality run, but I plan to release all the tools I will create, and the run can be useful if someone else want to do a higher quality run afterward. Hopefully, I'll catch up the previous wip with the new vba soon. Edit; Btw, my latest version for the map looks like this: http://pages.infinit.net/silas/dwm/mapviewer.jpg I'm trying to fetch the exact position of the portal. I fetched a couple of values relating to the portal, but nothing yet with the position. Oh well, let's try harder...
Joined: 3/15/2007
Posts: 131
I played this game sort of obsessively when I was younger, so I'm very glad to see all the effort that's being put into the run