Posts for c-square


1 2
8 9 10
26 27
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
MUGG wrote:
Having the seed is (and has been) good enough in many cases. Thanks for your help!
I've posted them on this thread. If you have any tips on how to figure out how something is working just based off the RNG seed, I'd greatly appreciate it. I've found figuring out what the random function's calculation is very difficult in the past.
Post subject: JPC-rr memory lua scripts
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Hi all, Here are the lua scripts I use for searching and watching memory in JPC-rr:
    1) searchmemory.lua Use this script to search for a particular value in memory. On the first run, it'll run through 2 million memory addresses searching for your value and spit out a file with all the addresses. If you want to narrow your search, do something that changes the value you're looking for in the game and then run the search again, setting the first output file as the input file, and specify a different name for the output file. Note: Don't use the value zero for your first search. I've warned you. :) 2)searchdiffmemory.lua Same as the above, except instead of searching for a specific value, it searches for values that have changed, or values that have stayed the same. First run will always dump all 2 million values, and you'll need to use that output as your input file to do a comparison. 3)stringsearchmemory.lua Use this to search for strings of characters in memory. Outputs the memory address for the start of the string. 4)printmemory.lua Watches values of memory addresses and prints them in the lua window whenever they change. You need to at least move one frame for it to print, but it will keep watching as long as the script is running. 5)printmemoryonce.lua Same as the above, but only prints once and then ends. Doesn't need a frame advance.
Also, FYI, if you ever want to poke a value, create a lua script with one of the following lines:
jpcrr.write_byte(memAddr,value) -- for values up to 255
or
jpcrr.write_word(memAddr,value) -- for values > 255
where memAddr is the address you want to poke to and value is the value you want to poke.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
The only way to do memory searches/watches is through lua scripting. I’ll try to get the scripts I use shared here tonight if I have time. Figuring out the RNG is nearly impossible without a look into the source code for the game. First you have to find the memory address that holds the current RNG seed, then you have to figure out the calculation for generating the next number, then you have to figure out what that number means for the thing you’re trying to watch/manipulate. Countdown timers are a little easier to find, but still require a lot of digging.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
DrD2k9 wrote:
c-square wrote:
DrD2k9 wrote:
I can get you guys this new FreeDOS image if you like.
Yes, please!! The 1:1 mouse ratio is reason enough for me to go to this.
I sent you a PM with details. Also, I may be able to update the current Floppy image of FreeDOS to default the mouse to 1:1 as well. I'll let you know asap.
Thanks! It works like a charm.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
warmCabin wrote:
Well, either way, your feedback has inspired me to create a new run: an "Any%" TAS!
Well done! I think this has a high chance at getting published, maybe even making moons because of its short length! If you can think of anything that makes it more entertaining (such as the firefighter suggestion you had) without losing any time, then it'll increase your chances. Kudos to you! I have a small concern that "No pressing start to skip minigames" will exclude it from being vaultable, but I think we can make an argument that there's no valid run without that.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
DrD2k9 wrote:
I can get you guys this new FreeDOS image if you like.
Yes, please!! The 1:1 mouse ratio is reason enough for me to go to this.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
MUGG wrote:
Mouse clicks are behaving weird in JPC-rr... I can't seem to make it register a click when I press 7 and then advance a frame. I had to rely on wild mashing while the game was running. At other times, I was done clicking but then it clicked by itself 5 seconds later, randomly.
Huh, that is weird. When that happens, have you tried closing and reopening JPC-rr? Does that fix it? I'm just seeing this now, and I have to admit I have trouble seeing this get many "Yes" votes for entertainment, especially if it's upwards of 20 minutes long. If you're aiming for Vault, then I think this will be a good fit.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Hey DungeonFacts, welcome to DOS TASsing! DrD2k9 has already done a great job of answering your questions, so I'll just add that, although there's not much of a guide, there are a lot of people here who are very happy to provide tips and assistance. It's not that hard, once you've got the basics, and getting past the boot screen loading up the game teaches you basically everything you need to know to make a successful TAS. MUGG just recently picked it up and was able to get out #5850: MUGG's DOS Star Trek: 25th Anniversary in 13:33.18 quite quickly. DrD2k9 started fresh and it wasn't long before he had his first Space Quest submission done. At the moment, JPC-rr is all there is, and I've done my best (out of necessity) to add helper features to make things easier. As DrD2k9 mentioned, the worst part of the process is altering your run and fixing desyncs, so be sure that every screen is the way you want it before moving on (to keep from driving yourself crazy!!). I'm still working on improving this in what little spare time I can find. One thing you should know is that one modification I made was to allow you to just type when the Virtual Keyboard window is active, and it will record the keys you type. Unfortunately, this was meant for helping with text adventure games, and so if you release the key, it will send a key-release as well. For something like Crystal Caves, you want to be holding a key down over several frames, so it may be more useful just to use the click-button interface and avoid hitting keys when the Virtual Keyboard window is active. In regards to the artifacts, can you create a thread for Crystal Caves in the Dos forum and post an encode? We can then try and see if we get the same thing when we run it. FYI to make an encode: 1) Save a movie file of your TAS 2) Load your movie file 3) Start Dumping 4) Start your movie running 5) Stop your movie at the point you want it to end 6) Stop dumping 7) On the command line run:
dumpconvert --video-width=640 --video-height=400 --video-framerate=125875/1796 --output-cscd=%2,crf=0,fullrange=on %1
where %1 is your dump file and %2 is your desired avi filename. Or better yet, put the above in a batch file to run. Finally, DOS TASsing is certainly more difficult to get into than other platforms due to the lack of documentation and refined tools. That said, it's not that much harder, as the real work for making a TAS (route planning, thinking outside the box, patience and perseverance) will be the same regardless of the platform you choose. And the great thing about DOS TASsing is the fact that there are so many amazing titles out there that are completely untouched and ready for the taking. Best of luck, and be sure to reach out any time you need help!
GJTASer2018 wrote:
Failing that, you can talk to c-square, he's the resident JPC-RR expert around here. :)
Aww, shucks! :) Though honestly, Ilarli built the system, so he's leagues ahead of me. I just hack it when I need something added. Slamo and turska also have a ton of experience with the emulator and Apogee/ID games in particular. I'm sure either would be a great source of tips for running Crystal Caves.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
warmCabin wrote:
In alternative mode, you draw pictures on the NES and tell the game who won, on the honor system. So you really have a point, there...
Yeah, in that case I'd say it would definitely be declared a "trivial" game.
warmCabin wrote:
Regular mode has some gameplay (which would be skipped) and blind guesses (which would have to be manipulated) involved. I think the 1 in 500 RNG manipulation would be astronomically more effort for a marginally more entertaining movie, but do you suppose it would be more likely to pass the "board game" test?
Playing a regular mode with quickest failures on each mini-game, and manipulating the shortest words would stand a chance at passing the test and making vault. There are precedents both ways: The Monopoly run got whereas the Wheel of Fortune run didn't. Both were "trivial" games with heavy rng manipulation.
warmCabin wrote:
I'll be lame and justify a couple of the points I think you're referring to:
Not lame at all. I appreciate the extra information, and helps to understand what you're working with.
warmCabin wrote:
What about the Family Feud TAS? Someone described it as an "incident" in my userfile, leading me to believe it may be a special case, where similar movies are unlikely to be accepted.
The Family Feud run was certainly a good example of a playaround, and abusing the parser. However, replicating it is a difficult thing to do, something I found out myself firsthand when I tried it.
warmCabin wrote:
Due to the board layout, all 4 minigames are necessarily shown off, but there's plenty of cool (but extremely tedious) RNG manipulation involved.
Yeah, the RNG manipulation would be a fair bit of work, but really that's what would put it over the top. It only question is whether it's worth your time to do it.
warmCabin wrote:
Thank you for your comments. I hope I don't sound too defensive right now; a bad TAS is a bad TAS! I want to fix it if possible, or create something better if not.
You're not sounding defensive at all! You're actually doing the right thing by posting this on WIP and getting feedback, so you're already leagues ahead of many others (myself included for the Jeopardy run) who just submit their work and then argue it in the submission comments. I can tell your dedication will lead to a great TAS soon, either on this game or another.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Someone always has to vote "no", don't they... Well I can say it's not me. Excellent run!
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
I watched both. The first one would qualify for vault if it passes the "board game" test. It has arcade elements, so normally it should pass, however none of that is actually seen in the TAS, so it may be argued to be just a roll-the-die, move your token game. There were many points in the playaround I found fun, but between them were points that felt boring, or like I was just watching a human play. Making wrong guesses doesn't really add anything for me, and I had to question why you took hits or let people just hit the ground. I have trouble seeing a playaround make it to moons, and it wouldn't qualify for vault. The potential I see in this game is TASing one of each minigame as fast as possible. This would be an "All mini-games" category, or one could argue it would be a 100% run. The goal is to run one of each minigame and end the game in the shortest amount of time. This is a goal that others could then try to better, which is really the point of the site, while showcasing RNG manipulation and strategy. Which order you do the games in may make a difference in how fast your final time is, so it would require planning. I think this category would stand a good chance of making a moons publication.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Just watched the first 30 minutes and I'm floored. Great work!
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
I tried it myself, and I'm getting the same fault, although it happens even before the first game screen loads (immediately after I type in MB). I tried playing with a few settings, but no luck. :(
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Jerrietheferry wrote:
I don't have any experience with making a TAS, but perhaps someone here is up for the challenge!
Well, if you're ever interested in trying, there's a great community here that would be happy to help you out! I agree with DrD2k9, a run on easy would most likely not get published here, but there are a myriad of other dos games that have yet to get a TAS.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Nice run, Kenttsu! Re: Sound Blaster, are you using the Sound Blaster 1 option? When you assemble the system, do you include the org.jpc.modules.SoundCard module? Have you tried not bypassing fdconfig.sys and autoexec.bat?
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Good run. Yes vote! And the fact that this is only 19 ms faster than the RTA shows how insane the real-time run was. I'm assuming the cars are always in the same spots and there's no RNG, correct?
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Good run of a bad game. Yes vote.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Congrats on your first DOS TAS, MUGG! Well done. I'm glad you took this on, and I'm looking forward to your next one!
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
DrD2k9 wrote:
c-square wrote:
Are you considering a Warcraft run?
I hadn't been, but I'm open to it. Among my seemingly millions of other projects. If you want to do it, have at it! I'll help as I can.
Thanks, but I barely have time to work any TAS stuff recently. And Warcraft would require a lot of research and planning.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Very nice, DrD2k9! Thanks for working on this. This knowledge will benefit us all. Are you considering a Warcraft run? And sounds like you're making great progress, MUGG. Keep chugging away, and a reminder to make sure everything is as you want it before moving forward.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
thecoreyburton wrote:
Here are some extra encodes of this run. Higher resolutions are based on the game's native resolution and are scaled at 2x
Great! Thanks, thecoreyburton! Hey, I noticed you have "Corey" in your handle. You're not Corey Cole, are you??
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Too bad. I'm in the same situation where I thought I had a great skip for my QFG2 fix run just to discover it won't work out. Fun at first, but disappointing in the end. Keep hunting, though! I'm sure there's more to find out there.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Congrats, MUGG! Glad to hear it wasn’t anything big. Happy TASing!
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
Nice work! Looks like you're getting the hang of things. :)
MUGG wrote:
So I made a HD image of the game which is set up to use the Sound Blaster (instead of Sound Blaster Pro) and it sounds better. Is it possible to sync my movie with the new image?
Yeah. Unfortunately Sound Blaster Pro isn't supported, only Sound Blaster. It is possible to switch images. At the top of your movie file, you'll find a line like this:
+HDD 6795020dbf3164cbe1d6b3fe9d41b0e4
Switch the string after +HDD with the code from a save or movie from the new image. Note, this only works with movies, not savesates, and by switching images, it's highly likely your movie will desync somewhere after the swtich.
Perhaps I wrongfully assumed that I loaded a state from the previous image on the new image? I don't know how to check which image is used. In the Assemble window, the new image is listed.
To my knowledge, it doesn't work with savestates. A savestate is a memory dump, so it will always load its original image. The assemble window has no relation to the currently running image.
I had asked here how to make the emulator read+write, in order to go on after loading a savestate from a pre-existing movie file. But "Truncate Event Stream" in the dropdown menu does what I wanted.
Huh, I've never used that. I'll have to look into it. Movies are always read+write. Movies play back, you can always insert new commands while they are playing. Note you can't delete commands from a movie however. In practice, I never use movies except when I want to dump to a video file. Savestates are better for managing progress, and easier to use. Finally, since it sounds like you're really starting to get into it now, some important advice: At every step in your TAS, be sure you are absolutely satisfied with your current progress before moving on to the next part of the TAS. JPC-rr TASes are a huge pain to refactor, so you'll save yourself a lot of frustration by making sure it's perfect on your first pass.
Active player, Experienced Forum User, Published Author (372)
Joined: 9/25/2011
Posts: 652
MUGG wrote:
Why ctmouse /r32 instead of ctmouse?
By using /r32, you set the mouse movement to be linear instead of exponential, in other words no mouse acceleration. That’s vital for accurate mouse movements, and the mouse support I added needs it to be linear.
1 2
8 9 10
26 27