1 2
8 9 10
18 19
Joined: 1/26/2009
Posts: 558
Location: Canada - Québec
Thanks for demonstration. Since you guys are working on a minimalOS/guestOS in (qemu?)-kvm, would it be possible to provide us his OS image? I would love to mess around with this hacked nethack version and possibly try to see if the python script could work.
Post subject: NetHack rerecording environment demonstration
Moderator, Senior Ambassador, Experienced player (907)
Joined: 9/14/2008
Posts: 1014
BadPotato wrote:
Thanks for demonstration. Since you guys are working on a minimalOS/guestOS in (qemu?)-kvm, would it be possible to provide us his OS image? I would love to mess around with this hacked nethack version and possibly try to see if the python script could work.
Thanks - I'm surprised people have watched the demonstration, especially since it's an hour long. It's probably about as honest of an overview of how the system works as possible as there's about a four minute section in the middle where I repeatedly made typos causing confusing behavior (hint - make sure you actually save when exiting vim). I *could* post the actual OS image but I need to find somewhere to put it; it's possible that I could commit it to github although I need to check on filesize limitations as the image is ~600 MB in size. With that said, it's probably best to create your own JeOS guest KVM and do a git pull inside of the guest. Having said that, the system is very custom-built and not particularly fit for redistribution so if you decide to try this just know that YMMV. Thanks again for your interest, A.C. ******
I was laid off in May 2023 and became too ill to work this year and could use support via Patreon or onetime donations as work on TASBot Re: and TASBot HD is stalled. I'm dwangoAC, TASVideos Senior Ambassador and BDFL of the TASBot community; when healthy, I post TAS content on YouTube.com/dwangoAC based on livestreams from Twitch.tv/dwangoAC.
Joined: 3/11/2008
Posts: 583
Location: USA
Read the turnbyturn.txt and found some things for fixing/commenting: turn 0: spellbooks of force bolt and "scroll monster"? [What is a spellbook of scroll monster? Is it useful for making monsters respawn when they shouldn't a la NES games? (/smalljoke)] turn 133: "recharge the scroll" should be "recharge the wand" turn 219: [comment: hey, I use numrow to move frequently! You can use both hands with 1234 6789!] turn 464: "This lead to quite a lot of deaths" should be "led" turn 684: [What's the ring the other xorn ate? Did you check? Viewers will be interested.] Lastly I wonder if there will be more information contained in the turn-by-turn description, the input file, or the text-output updates, once you're done. And why aren't you using the useful option to change the characters to display ghosts/shades? Or was this already answered?
Active player (293)
Joined: 12/16/2008
Posts: 458
Location: Houston
eternaljwh wrote:
And why aren't you using the useful option to change the characters to display ghosts/shades? Or was this already answered?
It's not an in-game option, and if you are changing stuff outside the game then really whats the limit, plus it slows down the run
Joined: 3/11/2008
Posts: 583
Location: USA
It's "merely" a graphical change which makes things easier on the viewers (see: magnet beam hack). Gameplay-wise it has the same effect as, every turn, using a farlook on every square with 0x20 ' '[space] I suppose it might change the synch pattern as spaces changing from empty-space to shade/ghost would then instead need a cursor-move-character-write, which would be problematic (and slow down the run a fraction, now I see, but not in terms of input length, only in terms of non-input-responsive time). It's in pretty much exactly the same boat as Detect Monsters, there- it's causing more character prints to give the viewer more information. It's probably inconsequential.
Player (36)
Joined: 9/11/2004
Posts: 2630
Why are you using detect monsters for this effect? Why not a passive effect like telepathy, which you can get from just eating a corpse.
Build a man a fire, warm him for a day, Set a man on fire, warm him for the rest of his life.
Joined: 1/26/2009
Posts: 558
Location: Canada - Québec
I think it was to exercise divination skill in the same time. Hm, also how are the progress?
Editor, Player (44)
Joined: 7/11/2010
Posts: 1029
@OmnipotentEntity: quite a few relevant monsters won't show up on telepathy, and anyway intrinsic telepathy doesn't work unless you're blind, and we need vision to read the Book of the Dead (and thus for the whole ascension run as it would take time to change). @BadPotato: We're currently rehearsing the end of the run, using debug mode to set things up. We've already found and tested a working strategy from D:2 with the Amulet to the end of the game, as fast as possible; we're now working on the first part of the ascension run, from the Quest to D:2.
Editor
Joined: 3/31/2010
Posts: 1466
Location: Not playing Puyo Tetris
I know TAS runs are supposed to be fast, but will a player be able to "watch" this run?
When TAS does Quake 1, SDA will declare war. The Prince doth arrive he doth please.
Active player (293)
Joined: 12/16/2008
Posts: 458
Location: Houston
hegyak wrote:
I know TAS runs are supposed to be fast, but will a player be able to "watch" this run?
Take a look at the wip encodes, one of them pauses every time something happens. It's watchable. Also just a text file of the run is very readable. But yeah at normal speeds it's to quick to make out anything, though perhaps not a quick as you'd think
Joined: 7/11/2010
Posts: 98
Would this run beat King's Bounty as the shortest run (it's 9 seconds)? (I'm sure a glitched one would but with this one I'm not sure)
Joined: 7/2/2007
Posts: 3960
If you require a framerate of 60FPS and allow a single input to take only 1 frame* then to be shorter than King's Bounty it'd have to be at least under 600 turns, and it's well past that. I guess the question is, is NetHack written in a way that requires waiting for a screen refresh before more input can be accepted? If it isn't, then your only limitation is the keyboard polling speed. * realistically it would take 2, wouldn't it? One frame to depress, one frame to release?
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Joined: 7/11/2010
Posts: 98
Derakon wrote:
If you require a framerate of 60FPS and allow a single input to take only 1 frame* then to be shorter than King's Bounty it'd have to be at least under 600 turns, and it's well past that. I guess the question is, is NetHack written in a way that requires waiting for a screen refresh before more input can be accepted? If it isn't, then your only limitation is the keyboard polling speed. * realistically it would take 2, wouldn't it? One frame to depress, one frame to release?
Yeah, I guess so. But if a glitched run was ever made, it would probably be shorter.
Editor, Player (44)
Joined: 7/11/2010
Posts: 1029
We are only limited by keyboard polling speed, and by lag. However, it's going to be way longer than King's Bounty; the keyboard polls at 750 keypresses per second, and we often take more than that in luck manipulation. And we get lag if we're doing anything other than walking into a wall; not much, but we're limited to moving around three spaces a frame. (Although we can buffer up input, the keyboard buffer is fintely large.)
Joined: 1/26/2009
Posts: 558
Location: Canada - Québec
I alway thought, that if a run would be aiming for pure speed, you would rather being using "count command", by typing the following: "600." in order to just wait 600 turns. You can also use ctl+direction move(hjkl), in order to move multiple space until you reach something new or a wall.
Editor, Player (44)
Joined: 7/11/2010
Posts: 1029
I did know about both of those (although the TAS uses numpad controls) Neither is useful for speed except in a minimum-presses category; except for walking into walls (where neither repetition method works), we can enter commands faster than the game can process them. We do use both of these methods to trigger glitches, though. So they're not entirely wasted.
Joined: 5/13/2009
Posts: 141
Sorry to bump without contributing, but I'm still looking forward to this one :) Is the run still being worked on?
Editor, Player (44)
Joined: 7/11/2010
Posts: 1029
miseiler wrote:
Sorry to bump without contributing, but I'm still looking forward to this one :) Is the run still being worked on?
Sure! We're currently trying to work out what we'll do in the turn immediately after getting the Amulet of Yendor. (We need to plan out the end of the run now, in order to be able to set things up earlier so that everything works perfectly past turn 2000.) The issue is that we need to use the Eyes of the Overworld to be able to read the Book of the Dead in air elemental form, and we need to use the Eye of the Aethiopica to branchport from the Quest to Gehennom (which saves an action over trying to do it via levports, two actions if there's no way to offend the quest leader in zero time). The problem with these items is, that they both give MR, which prevents polymorph traps working. And we can save an action (that ends up snowballing and saving an entire turn) by landing on a polymorph trap as we enexto out of Rodney's, but only if it activates. Thus, we're going to need to have our Eye and Eyes stolen. Neither is in a slot which would be stolen by a foocubus, which means that we're going to have to set up some nymphs in Gehennom. This seems possible (say on the fake wizard's tower level), but we're still trying to work out the details and verifying that it works.
Editor
Joined: 3/31/2010
Posts: 1466
Location: Not playing Puyo Tetris
I seem to have lost turnbyturn.txt I loved the comments in that file.
When TAS does Quake 1, SDA will declare war. The Prince doth arrive he doth please.
Emulator Coder, Skilled player (1113)
Joined: 5/1/2010
Posts: 1217
hegyak wrote:
I seem to have lost turnbyturn.txt
Here you go: https://gitorious.org/nethack-tas-tools/mainline/blobs/master/turnbyturn.txt
Joined: 8/1/2006
Posts: 428
Why don't you polymorph into a flesh golem on the Oracle level, for humor's sake if nothing else?
Trying 127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused telnet: Unable to connect to remote host
Editor, Player (44)
Joined: 7/11/2010
Posts: 1029
That's actually a decent point. If it hexes in, we may as well change it for the added entertainment value. If it doesn't, it's not worth redoing everything since then for something so minor.
Personman
Other
Joined: 4/20/2008
Posts: 465
I finally read all of turnbyturn.txt, and I just wanted to say thank you SO much for being so thorough and detailed, it was truly a joy to read. I also passed it on to a few friends who don't read this forum, and while I don't know if they made it all the way through, I know they at least enjoyed the beginning :)
A warb degombs the brangy. Your gitch zanks and leils the warb.
Joined: 7/2/2007
Posts: 3960
Yeah, I suspect that turnbyturn.txt will be the preferred way to "watch" the run when it's completed.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Patashu
He/Him
Joined: 10/2/2005
Posts: 4044
Derakon wrote:
Yeah, I suspect that turnbyturn.txt will be the preferred way to "watch" the run when it's completed.
Imagine the annotations: Cover the screen every frame with turnbyturn.txt's wisdom for that frame, pause for 30 seconds to let you catch up :)
My Chiptune music, made in Famitracker: http://soundcloud.com/patashu My twitch. I stream mostly shmups & rhythm games http://twitch.tv/patashu My youtube, again shmups and rhythm games and misc stuff: http://youtube.com/user/patashu
1 2
8 9 10
18 19