Difference between revisions of "IPBT"

From NetHackWiki
Jump to navigation Jump to search
(Good reasons to use IPBT; the bad reason is not so bad.)
m (Installation instructions no longer work. Download link is for older version. Newer version requires cmake to install. Lubuntu 16.04 has problems with the cmake install.)
 
(11 intermediate revisions by 6 users not shown)
Line 1: Line 1:
'''IPBT''' is a [[ttyrec]] player written by Simon Tatham. It is easiest to run on [[Unix]], but can be made to work on other operating systems. It stands for '''It's Play-Back Time'''.
+
'''IPBT''' is a [[ttyrec]] player written by Simon Tatham, author of [[PuTTY]]. It is easiest to run on [[Unix]], but can be made to work on other operating systems. The name is an acronym, expanding into '''It's Play-Back Time'''.
  
There are several good reasons to use IPBT: it allows you to rewind files, it allows you to play at linear or [[logarithm]]ic speeds, it allows you to jump to specific frames. The disadvantage is that IPBT must load the entire ttyrec file before it begins play; this is less of a problem for [[NetHack]] than for large, repetitive games like [[Angband]].
+
There are several good reasons to use IPBT: it allows you to rewind files, it allows you to play at linear or [https://en.wikipedia.org/wiki/Logarithmic_scale logarithmic] speeds, it allows you to jump to specific frames. The disadvantage is that IPBT must load the entire ttyrec file before it begins play; this is less of a problem for [[NetHack]] than for large, repetitive games like [[Angband]].
  
 
==Downloading, installing and compiling==
 
==Downloading, installing and compiling==
 +
 +
<<<This is for an older version and the download link no longer works. Current version requires cmake, so installation steps are different>>
  
 
You will need a working compiler and related utilities. This includes at least <tt>gcc</tt> and <tt>make</tt>. You will also need the ncurses headers. On Debian, Ubuntu, and some other distributions, they are in the package libncurses5-dev.
 
You will need a working compiler and related utilities. This includes at least <tt>gcc</tt> and <tt>make</tt>. You will also need the ncurses headers. On Debian, Ubuntu, and some other distributions, they are in the package libncurses5-dev.
  
Download the latest version of IPBT from [http://www.chiark.greenend.org.uk/~sgtatham/ipbt/ http://www.chiark.greenend.org.uk/~sgtatham/ipbt/] ([http://www.chiark.greenend.org.uk/~sgtatham/ipbt/ipbt-r6770.tar.gz direct link]), unarchive, and make:
+
Download the latest version of IPBT from [http://www.chiark.greenend.org.uk/~sgtatham/ipbt/ http://www.chiark.greenend.org.uk/~sgtatham/ipbt/] ([https://www.chiark.greenend.org.uk/~sgtatham/ipbt/ipbt-20190601.d1519e0.tar.gz direct link]), unarchive, and make:
  $ wget http://www.chiark.greenend.org.uk/~sgtatham/ipbt/ipbt-r6770.tar.gz
+
  $ wget https://www.chiark.greenend.org.uk/~sgtatham/ipbt/ipbt-20190601.d1519e0.tar.gz
  $ tar zxfv ipbt-r6770.tar.gz
+
  $ tar zxfv ipbt-20190601.d1519e0.tar.gz
  $ cd ipbt-r6770/
+
  $ cd ipbt-20190601.d1519e0/
 +
$ ./configure
 
  $ make
 
  $ make
  
Line 16: Line 19:
 
  <tt>./ipbt <ttyrecfile></tt>
 
  <tt>./ipbt <ttyrecfile></tt>
  
The included README contains these instructions:
+
Here are the commands; most of them are case insensitive.
  
  * `q' (or `Q') quits ipbt.
+
  * `q' quits IPBT.
  * Space moves on by a frame. Prefix it by a number to move on by
+
  * Space (or '>') moves forward by a frame. Prefix it with a number
   multiple frames at a time.
+
   to skip multiple frames at a time.
  * `b' moves back by a frame. Prefix it by a number to move backwards by
+
  * `b' (or '<') moves back by a frame. Prefix it with a number to
  multiple frames at a time.
+
  move backwards by multiple frames at a time.
 
  * `o' toggles the on-screen display, which shows the current status
 
  * `o' toggles the on-screen display, which shows the current status
   of ipbt.
+
   of ipbt (such as frame number and play speed).
  * `L' toggles logarithmic time compression (designed to have little
+
  * `L' toggles logarithmic time compression (which has little effect
   effect on small delays but massively compress long ones).
+
   on small delays but massively compresses long ones).
 
  * Typing a number followed by `x' causes play to proceed at that
 
  * Typing a number followed by `x' causes play to proceed at that
 
   many times normal speed (e.g. `3x' means play at triple speed).
 
   many times normal speed (e.g. `3x' means play at triple speed).
Line 39: Line 42:
 
  * `p' (and also `s', for historical reasons) toggles pause mode.
 
  * `p' (and also `s', for historical reasons) toggles pause mode.
 
   Pause mode is initially enabled.
 
   Pause mode is initially enabled.
 +
* `/' searches forward.
 +
* `?' (or `\') searches backwards.
 +
* `n' searches the same string in the same direction.
 +
* `N' searches the same string in the opposite direction.
 +
 +
==Patches==
 +
 +
[[User:Eidolos|Eidolos]] has written a search history feature for ipbt that hasn't (yet?) been incorporated into the main build. Get it at [http://sartak.katron.org/misc/ipbt_search_history.diff http://sartak.katron.org/misc/ipbt_search_history.diff]. Press the up or down keys to scroll through your history while typing a search query.
  
 
[[Category:Utilities]]
 
[[Category:Utilities]]

Latest revision as of 04:17, 9 January 2022

IPBT is a ttyrec player written by Simon Tatham, author of PuTTY. It is easiest to run on Unix, but can be made to work on other operating systems. The name is an acronym, expanding into It's Play-Back Time.

There are several good reasons to use IPBT: it allows you to rewind files, it allows you to play at linear or logarithmic speeds, it allows you to jump to specific frames. The disadvantage is that IPBT must load the entire ttyrec file before it begins play; this is less of a problem for NetHack than for large, repetitive games like Angband.

Downloading, installing and compiling

<<<This is for an older version and the download link no longer works. Current version requires cmake, so installation steps are different>>

You will need a working compiler and related utilities. This includes at least gcc and make. You will also need the ncurses headers. On Debian, Ubuntu, and some other distributions, they are in the package libncurses5-dev.

Download the latest version of IPBT from http://www.chiark.greenend.org.uk/~sgtatham/ipbt/ (direct link), unarchive, and make:

$ wget https://www.chiark.greenend.org.uk/~sgtatham/ipbt/ipbt-20190601.d1519e0.tar.gz
$ tar zxfv ipbt-20190601.d1519e0.tar.gz
$ cd ipbt-20190601.d1519e0/
$ ./configure
$ make

You can now run IPBT from the current directory:

./ipbt <ttyrecfile>

Here are the commands; most of them are case insensitive.

* `q' quits IPBT.
* Space (or '>') moves forward by a frame. Prefix it with a number
  to skip multiple frames at a time.
* `b' (or '<') moves back by a frame. Prefix it with a number to
  move backwards by multiple frames at a time.
* `o' toggles the on-screen display, which shows the current status
  of ipbt (such as frame number and play speed).
* `L' toggles logarithmic time compression (which has little effect
  on small delays but massively compresses long ones).
* Typing a number followed by `x' causes play to proceed at that
  many times normal speed (e.g. `3x' means play at triple speed).
  Typing just `x' is equivalent to `1x': it restores normal speed.
* `X' is like `x', but slows down rather than speeding up: `2X'
  means half speed and `3X' means one third speed. `X' on its own
  restores normal speed, just like `x'.
* `g' jumps to the beginning of the animation. Prefixing a number
  jumps to a particular frame.
* `G' jumps to the end of the animation. Prefixing a number jumps
  to that many frames from the end.
* `p' (and also `s', for historical reasons) toggles pause mode.
  Pause mode is initially enabled.
* `/' searches forward.
* `?' (or `\') searches backwards.
* `n' searches the same string in the same direction.
* `N' searches the same string in the opposite direction.

Patches

Eidolos has written a search history feature for ipbt that hasn't (yet?) been incorporated into the main build. Get it at http://sartak.katron.org/misc/ipbt_search_history.diff. Press the up or down keys to scroll through your history while typing a search query.