Posts for DungeonFacts

Experienced Forum User, Published Author, Player (55)
Joined: 3/16/2018
Posts: 34
Location: KC
Yeah, the transparent gem pickup is purely an artifact of jumping for the gems. Thus far I think those 2 in the first level are the only ones I've picked up. The timing windows for shooting is kinda weird; when you shoot, you pause for a frame, and it's especially noticeable depending on which portion of the walk animation you interrupt. It's smoother if you fire just while walking. Once you fire, only one projectile can be onscreen at a time, and you can't fire a shot until the explosion from the previous one has completely disappeared, and the collision detection for them is pretty unforgiving if you fire too soon while falling. Level 6 (Low Gravity) is especially bad because in addition to the paused frame you actually have 2 frames of recoil per shot. Combined with a maze with lots of narrow vertical spaces, there are a lot of repeated jumps that look really wasteful by TAS standards that I found were unavoidable after a lot of experimentation. I've got some pretty neat jumps that I was able to figure out despite that, but in the absolute sense it doesn't actually affect the run because you get stuck waiting for a hovering platform at the end of the labyrinth. The level ends with shooting through 3 blocks in a row, which took the same amount of time whether I fired on approach at the beginning of the level or at the end (thanks to the delays imposed by the 1-shot-on-screen limitation).
Is that you, Morte?!
Hey, Chief, what's up?
Experienced Forum User, Published Author, Player (55)
Joined: 3/16/2018
Posts: 34
Location: KC
I wound up re-recording a few levels (which meant playing back the movie and over-writing sections), so hopefully the finished product will be a bit more polished. There are a few sections that I might be able to improve, though it's especially hard to choose damage-boosts because of enemy movement RNG. In general, I've tried to damage boost in areas that are guaranteed timesaves even if a theoretically optimal boost would be better elsewhere based on enemy or obstacle timing. One of my major re-records was to conserve ammo and pick up more guns when I found myself in a level with only 2 shots remaining and 6 shots worth of enemies to get through, so there's also some sub-optimal movement for those reasons. I'm heavily indebted to pidgezero_one's routing. There a few jumps that I've been able to improve significantly and I have the obvious luxury of frame-perfect dodging and landing, but the overall strategy follows her course very closely. Also, since this is my first TAS, while I am striving to do the very best that I can to get 100% optimal routing and performance, I'm certain that I will overlook something from lack of experience, or leave a slightly suboptimal movement because they're *really* hard to fix with this tool. There are also likely a few sections that could improved through creative/unintuitive routing, but for a simple game like this one there are fewer opportunities to improve upon the current strats. Even between my abandoned trial and the second run I found spots where I could save a frame or two by adjusting my jump positioning, so I'm not going to be arrogant enough to assume that my very first attempt can't or won't be bested. Overall, thank you all for the feedback and continued support! I've finished 10 out of 16 levels, but I think I'll wait til I knock out the remaining 6 before I share the final result. Progress is a little slower than I expected (work, children, and my own distractability being the primary obstacles) but it's surprisingly relaxing to calmly work through the levels.
Experienced Forum User, Published Author, Player (55)
Joined: 3/16/2018
Posts: 34
Location: KC
Put some more time into the new run. Current progress is 5/16 of the levels complete. WIP video for anyone interested: Link to video
Experienced Forum User, Published Author, Player (55)
Joined: 3/16/2018
Posts: 34
Location: KC
I made some nice improvements to the first room, but the RNG for the falling rocks level is significantly worse. Waiting a few frames (or even a few seconds) before entering the level doesn't seem to change the rocks that fall, so for right now I'm just going to play the hand I've been dealt. Just watching them on replays it seems like there's a fixed cycle of rocks that fall once the level begins, and I don't think I'm likely to save time spending extra seconds hoping for a different (not necessarily better) rock seed. I've already hit 3 rocks that I'll have to wait on, and I can only damage boost off 1 since I need to damage boost off the spiders at the end of the level. I guess this means I should focus on making those segments entertaining rather than optimal since I can't just plow through them.
Experienced Forum User, Published Author, Player (55)
Joined: 3/16/2018
Posts: 34
Location: KC
My heart sinks at the reminder that the movie can be skipped, since that means I'll need to start the whole run all over, lol. On the other hand, it means I can fix the small errors that I know I made in the first couple rooms. I lost a frame in level 2 for getting the Perfect Health bonus by not damage boosting off a spider, and I'm sure there are some jumps that I can improve. That's awesome news about the RNG not changing between runs, though. As long as my timed shots will always connect, there's plenty of ammo to spare. While I rebuild the run and cut out the intro, here are the results of my learning run: Link to video I get to play Chicken with a couple boulders, and I really like how the timing works out for the reverse gravity in the boulder level as well. Making this is even more fun than I was expecting!
Experienced Forum User, Published Author, Player (55)
Joined: 3/16/2018
Posts: 34
Location: KC
Thanks for the tips, friends! I downloaded the latest floppy image from FreeDOS, which did clear up the artifacts. This recording went through the first level: Link to video There's probably a few frames worth of improvement; because Milo jumps a fixed height there are a lot of jumps and bumps that appear to lose a lot of momentum. I tested a lot of different angles and distances on each jump to minimize frame loss, but I will not be surprised if someone with more experience could trim a few frames off this. I've been warned by the runners in the Crystal Caves speedrunning Discord server that RNG for enemy movement and falling rocks will probably present issues on future levels. I've noticed that the movie I've recorded has identical movement for the green slimes each time that I've run it, so I would like to know if a movie uses the same RNG seeds each time it runs. I really hope I don't have to dig into doing RNG manipulation and memory editing if I can help it.
Post subject: Crystal Caves
Experienced Forum User, Published Author, Player (55)
Joined: 3/16/2018
Posts: 34
Location: KC
I started a thread initially in the Newbie Corner, and at the recommendation of the folks there I am moving my questions and updates to a thread here to track the specific progress of the game. I've found some very good resources already on routing and tactics for Crystal Caves. The version I am using is what comes packaged with the Steam version that runs via DOSBox, which contains all 3 episodes. Eventually I would like to create a TAS for each, but my initial goal is to complete Episode 1, which we all know and cherish from the early days of shareware. To test things initially, I dumped my test recording and successfully converted it to an avi. I learned a few things in the process, most notably that the sound for the game appears to be working correctly (even though you don't hear anything on JPC-RR) and that the video plays back at the correct framerate and aspect ratio. My biggest concern, of course, is the really ugly artifacts that appear up through the beginning of the actual gameplay. These were visible while running JPC-RR itself, so I don't know if it's an issue with the emulator, the game, or something else. Link to video This is my first exposure to TAS and JPC-RR, so I'm sure I've already missed something during the initial setup. Any commentary is welcome. This video is not intended to be anything more than a proof of concept; I will be starting a new recording to perform the actual run. My current JPC-RR configuration is as follows, again let me know if I should deviate from the defaults on anything: You can't see the full module line in the image, but it's just the default values that came with the software:
org.jpc.modules.BasicFPU,org.jpc.modules.SoundCard,org.jpc.modules.GMIDIInterface
If there are any additional modules that are standard or recommended for running DOS games, please let me know. I am also using the current 11.7 release, though I have been pointed to c-square's enhanced fork and should probably investigate that. Thanks in advance for all the assistance; I'm already standing on so many shoulders that I'll need to maintain a sub-post just to provide proper thanks to all the people who are making this possible.
Experienced Forum User, Published Author, Player (55)
Joined: 3/16/2018
Posts: 34
Location: KC
Thanks for the pointers, everyone! I'll get a thread created to track my progress and keep reviewing the materials you've suggested. I'm pretty excited to see how far I can take this. EDIT: New thread.
Post subject: Learning JPC-RR for DOS
Experienced Forum User, Published Author, Player (55)
Joined: 3/16/2018
Posts: 34
Location: KC
I would like to learn more about using JPC-RR to do TAS runs of DOS games, and I decided to start with Crystal Caves because it's a fairly simple platformer. I've been reviewing the guides on this site on how to use JPC-RR, and I've been able to start the game using the FreeDOS image and generate a very short recording that skips the autoexec.bat, launches into the game, and runs across the first floor of the game. The information on the emulator resources page is very good for getting the initial setup created, but I've had a lot of trouble finding any information about anything beyond those steps. My main questions so far: 1. Is there a TAS-focused guide on using JPC-RR after it's been installed? I've seen links to the formal documentation for the application, but I'm not sure how useful it will be to just dive headfirst into the manual. 2. Are there any other tools used for DOS runs besides JPC-RR? I haven't seen any obvious way to review the contents of a recorded video or edit what has been created (minus simply pausing the video and revising the subsequent actions), so I'm not clear if there's anything else I should be aware of. I've seen c-squared's post on some lua scripts, but without any programming experience I'll save that for after I've learned the basic tool. 3. Specific to running Crystal Caves (the only program I've run so far) it runs slowly if I just tell the game to 'Start' after assembly and let it run freely. Obviously doing single-frame advances will be slow, but I'm guessing JPC doesn't run at the same speed as DOSBox when running an application? Also, I get some artifacting when advancing through the game's opening movie, and I don't know if that's because I need to use different video settings, if the game itself isn't suited to JPC, or if I'm just using the tools incorrectly. I've tried to do my homework before asking any questions, and I've made a little progress, but I think I may have jumped into the deep end of things by looking into DOS games and selecting a title without any existing TAS videos. Any pointers would be greatly appreciated.