OSDN Git Service

Merge branch 'develop' into macos-develop
[hengbandforosx/hengbandosx.git] / readme-eng.md
1
2 * [日本語](/readme.md)
3
4 # What is Hengband?
5
6 A dungeon-crawler where you descend down a dungeon fighting hordes of monsters, getting stronger and trying to stay alive.
7
8 # How to install
9
10 ## Windows
11
12  * Download the latest binaries from [Releases](https://github.com/hengband/hengband/releases) - look for a `.zip` archive.
13  * Unpack the archive in the directory of your choosing.
14  * Double click on `Hengband.exe` to start the game.
15
16 **Note:** The first time you try Windows Smartscreen may ask you if you want to run this software. To bypass it you need
17 to first click on the text link *More info* and then the button *Run anyway*
18
19 ### Menu bar:
20
21 Some elements of the interface and game can be customized using the menu bar:
22
23  * **Sound Effects:** Options -> Sound
24  * **Music:** Options -> Music
25  * **Background image:** This will display an image in the background of the game.
26    * Options -> Background image -> None - disable the background
27    * Options -> Background image -> Custom - image selected by you (on first select will prompt you to select a file)
28    * Options -> Background image -> Change custom image - changes the selected Custom image
29
30 ## UNIX
31
32 Download the latest version of the source files from [Releases](https://github.com/hengband/hengband/releases). Then run the following commands:
33
34 ```
35 tar -jxvf hengband-x.x.x.tar.bz2
36 cd hengband-x.x.x
37 ./configure --disable-japanese
38 make install
39 ```
40
41 **Please note:**
42
43  * Replace `x.x.x` with the downloaded version's number.
44  * `--disable-japanese` is required to build English version, remove it if you want to build Japanese version.
45
46 To run in ASCII mode:
47
48 ```
49 ./hengband -- -n <number of windows>
50 ```
51
52 To run in the graphical mode:
53
54 ```
55 ./hengband -g -- -n <number of windows> # 8x8 Tiles
56 ./hengband -g -- -b -n <number of windows> ## double width size tiles
57 ./hengband -g -- -a -n <number of windows> ## 16x16 tiles (tiles of this size are not provided)
58 ```
59
60 ### Install with `setgid`
61
62 Run the following:
63
64 ```
65 ./configure --disable-japanese --with-setgid=games
66 make
67 ```
68
69 Running the following as root or with the sudo command will install the game into `/usr/local`:
70
71 ```
72 make install
73 ```
74
75 See `./configure --help` for more information about changing the installation location and other options.
76
77 ### Configuring display
78
79
80 The default font used in the main window is:
81
82 >  "-*-*-medium-r-normal--24-*-*-*-*-*-iso8859-1,-*-*-medium-r-normal--24-*-*-*-*-*-jisx0208.1983-0"
83
84 The default font used in the sub windows is:
85
86 > "-*-*-medium-r-normal--16-*-*-*-*-*-iso8859-1,-*-*-medium-r-normal--16-*-*-*-*-*-jisx0208.1983-0"
87
88 These can be controlled by setting environment variables:
89
90  * `ANGBAND_X11_FONT_<?>` - Sets the font for a specific window, from 0 to 7, eg `ANGBAND_X11_FONT_0`
91  * `ANGBAND_X11_FONT` - Sets the font for all the remaining windows
92
93 You can also change other window properties:
94
95  * `ANGBAND_X11_AT_X_<?>` - X position of a window
96  * `ANGBAND_X11_AT_Y_<?>` - Y position of a window
97  * `ANGBAND_X11_COLS_<?>` - Width of the window in *half-characters*
98  * `ANGBAND_X11_ROWS_<?>` - Height of the window in *half-characters*
99
100 ### Other notes
101
102 When using **XIM** with **XFree86 4.0** you need to set the environment variable `XMODIFIERS` to either `@im=skkinput` or `@im=kinput2`.
103
104
105 ## Macintosh
106
107 Download the dmg file for Macintosh, double click on it to open the disk
108 image, and then drag the hengband application inside it to where you want
109 to store it.  Double clicking on the application will run it.  Since the
110 application has not been signed, you'll likely have to make an exception
111 for it to use the application.  Apple's instructions for how to do that
112 are at https://support.apple.com/guide/mac-help/open-a-mac-app-from-an-unidentified-developer-mh40616/mac .
113
114 In short, one way to grant the exception is:
115
116 1. Control click (i.e. click while holding the control button down) on the
117 application in the finder.
118 2. Select "Open" in the menu that comes up.
119 3. That will bring up a confirmation dialog about allowing the application to
120 open on the system.
121 4. If your account does not have administrator privileges, there'll be an
122 additional dialog asking you to authenticate as an administrator to apply
123 the exception to the security settings.
124
125 For Mac OS X with Xcode installed, the Unix instructions can work to build a
126 version usable from a terminal.  If XQuartz, https://www.xquartz.org , is
127 installed, X11 will be used for display.
128
129 For Mac OS X 10.15 or later with Xcode installed, a native version can be
130 built by downloading the source archive and running
131
132 ```
133 tar -zxvt hengband-x.x.x.tar.gz
134 cd hengband-x.x.x
135 ./configure --disable-japanese --enable-cocoa
136 make install
137 ```
138
139 from a terminal where you subsitute x.x.x with the version number you
140 downloaded.  That will build hengband.app in the hengband-x.x.x directory:
141 you can then move hengband.app to where you want it to be.
142
143
144 # Getting started
145
146 Hengband is a roguelike game that has its roots in Moria, originally released in 1988. Across hundreds of updates
147 and many variants the game grew in complexity. At first playing it might seem complicated, confusing and impenetrable,
148 especially with no fancy graphics, but the basics are very easy to learn.
149
150 ## Character creation
151
152 Once you start Hengband you'll want to use File -> New in the menu and create your first character.
153 For the start we recommend:
154
155  * **Sex:** any
156  * **Race:** dwarf, so that you can survive more
157  * **Class:** warrior, as it's simple to play
158  * **Personality:** ordinary, to keep things simple
159  * **Birth options:** do not modify anything, press `Escape`
160  * **Autoroller stats:** do not change anything, use arrows to select *Accept* and press `Enter`
161  * **Rolling stats:** keep hitting `r` to reroll your stats, *s* to toggle between last two rolls,
162   *Enter* once you're happy with your stats. It's a good idea to reroll a few times until you get
163   good amount of Hit points is higher than an average roll
164  * **Name:** give your character a name you'll like staring at.
165  * **Character background:** you can edit the character background or leave it as-is (it has no
166   gameplay effect). Press `Enter` when ready.
167  * **Summary:** At this point you can either hit `S` to start over, `Q` to quit or `Enter` to begin the game.
168
169 ## How to move and act
170
171  * Use numeric keyboard to move your character in eight directions, and press 5 to wait a turn.
172  * Walk into enemies to attack them with your melee weapon.
173  * Attacking and killing enemies will give you experience, which in turn lets you level up and get stronger.
174  * Walk up/down the stairs using `<` and `>`.
175
176 ## What to do first
177
178  * A good first step is to exchange Wooden Torches you start with to Brass Lanterns:
179    * Step into the General Store (step on the brown number 1, it's the entrance).
180    * Hit `s` and sell the Torches.
181    * Hit `b` to buy and chose Brass Lanterns.
182    * When asked for quantity type `1`.
183    * Hit `Enter` to quickly accept the price and buy the lantern.
184    * Hit `Escape` to leave the shop.
185    * Hit `w` to wear and select the purchased lantern.
186  * It might also be a good idea to buy one or two Flasks of Oil from the same shop. Use command `F` to fuel
187    the lantern.
188  * Next it's advised you go slightly East of the entrance to the town into Yeek Cave. Step on purple `>`
189    and press that same key on your keyboard to enter the dungeon.
190  * Explore, kill monsters, collect items, go back to town to sell those items and buy better equipment.
191    The world is yours to explore!
192
193 ## Good to know
194
195  * When in town you can leave it to enter the wilderness. You can also enter the overworld map by pressing `<`, though
196    keep in mind you can be ambushed and you'll use a lot of food there.
197  * If you die you die forever. Next time you'll need to either restart with the same character or a create a new one.
198    If you don't like playing that way, there are two ways to work around this:
199    * Open options `=` -> Gameplay Options then toggle *Allow use of debug/cheat options*, then go back to list of options
200      -> Cheat Options and toggle *Allow player to avoid death*
201    * Manually backup saves under `lib/save/` and restore the backups when you die.
202    * Permadeath is seen as part of the fun as it greatly raises the stakes and causes you to play differently. But it
203      can be very frustrating too, especially when you're still learning.
204
205 ## Controls
206
207 At any point in game you can press `?` to open the help. A grouped list of actions can be displayed by pressing `Enter`.
208
209  * **[Movement]**
210    * `Numeric Keyboard` - Move around
211    * `Numeric 5` - Stay still
212    * `Shift+direction` - Run
213    * `Ctrl+direction` - Attack/Open/Close/Dig in that direction
214    * `<` - Go up stairs/Enter the overworld map
215    * `>` - Go down stairs/Leave the overworld map
216  * **[Tools]**
217    * `a` - Aim a wand
218    * `A` - Activate special power of an equipped item
219    * `E` - Eat food
220    * `f` - Fire a missile
221    * `F` - Fuel your torch/lantern
222    * `r` - Read a scroll
223    * `u` - Use a staff
224    * `q` - Quaff a potion
225    * `v` - Throw an item
226    * `z` - Zap a rod
227  * **[Actions]**
228    * `d` - Drop an item
229    * `g` - Pick up an item (You can also enable Auto Pickup in Options -> Input Options -> Pick things up by default)
230    * `l` - Destroy an item
231    * `o` - Open a door or chest
232    * `R` - Rest for a period (The default option `&` rests until you are fully rested)
233    * `s` - Search for traps/doors around you
234    * `S` - Toggle Search mode, where you act slower but keep looking on each move
235  * **[Magic]/[Abilities]**
236    * `b` - Examine spells/prayers/mental powers
237    * `G` - Gain new spells/prayers/mental powers
238    * `m` - Cast a spell/use a mental power
239    * `U` - Use a special power
240  * **[Equipment]**
241    * `t` - Take off an equipped item
242    * `w` - Wear/wield an item
243  * **[Info]**
244    * `C` - Character information
245    * `e` - Display equipped items
246    * `i` - Display inventory
247    * `I` - Displays information about an \*identified* item
248    * `l/*` - Inspect tiles
249    * `L` - Inspect the map around you
250    * `M` - Show full dungeon map
251    * `~` - Display various information
252  * **[Other]**
253    * `@` - Setup macro and keymaps
254    * `=` - Change options
255    * `$` - Reload auto-picker preferences
256    * `_` - Edit auto-picker preferences (Auto-picker only works when *Pick things up by default* is disabled)
257    * `n` - Repeat previous command
258
259 ## Item notation
260
261 * `(XdY)`
262   * Notation used for melee weapons, indicates the base damage dice of the weapon.
263   * The total damage is X rolls of Y-sided dice. For example:
264     * `1d12` is damage range of 1-12, average 6.5 damage
265     * `2d6` is damage range of 2-12, average 7 damage
266     * `3d4` is damage range of 3-12, average 7.5 damage
267 * `(+h,+d)`
268   * Usually used in melee weapons, but can sometimes appear on other equipment as well.
269   * `+h` indicates the bonus to accuracy of a melee attack.
270   * `+d` indicates the bonus to damage of a melee attack.
271   * Either parameter can be negative.
272   * Some heavy armor will omit `+d` and only display something like `(-2)` indicating a negative bonus to accuracy.
273 * `[a,+b]` or `[+b]`
274   * Used on armor.
275   * `a` indicates the natural increase to AC of the piece of armor.
276   * `+b` indicates the magical bonus.
277 * `(+p)` or `(+p Noun)`
278   * Indicates a modifier to item's unique effect.
279   * For example, in case of a *Ring of Damage* it indicate the bonus to damage.
280   * `Noun` is used in weapons and armors, telling what the bonus is for.
281 * `(xN)`
282   * Notation used in projectile weapons.
283   * `N` is the damage multiplier for projectiles.
284
285 ### Example 1: Dagger (2d4) (+10,+15) [+2] (+3)
286
287  * `(2d4)` - Base damage dice
288  * `(+10,+15)` - +10 accuracy bonus, +15 damage bonus
289  * `[+2]` - Magically increases AC by +2
290  * `(+3)` - Power of the special ability of this dagger, which can be known after \*Identifying* (or researching) it.
291
292 ### Example 2: Elven Chainmail (-2) [14,+12] (+3 Stealth)
293
294  * `(-2)` - -2 accuracy bonus
295  * `[14,+12]` - 14 base AC bonus, +12 magical AC bonus
296  * `(+3 Stealth)` - Increases Stealth stat by 3
297
298
299 # Advanced play
300
301 ## Macros
302
303 You will often find yourself repeating the same combination of keypresses multiple times during your game, things like
304 shooting at the closest target with your bow or casting a bunch of buffs on yourself at once. Macros allow you to
305 do that with one keypress.
306
307 * Press `@` to open *Interact with Macros* page.
308 * You have two options here:
309   * **Macros** are a number of keys pressed in sequence, that will trigger some action. For example setting it to `lpo`
310     would require you to press keys `l`, `p` and `o` in quick succession to trigger the effect.
311   * **Keymaps** define a new behavior for a single keypress. It's advised to use keys which normally have no mapping (
312     the easiest way to find those is to just keep pressing keys on your keyboard and see which one shows gibberish).
313 * Now to create your new macro/keymap:
314   * Press the key for either *Create a macro* or *Create a keymap*
315   * Press the key sequence/key you want to assign a new action
316   * Type the sequence of actions you want to trigger
317
318 ## Inscriptions
319
320 Items can be inscribed to add notes but also to trigger special behavior. Below is a list of special inscriptions:
321
322  * `=g`
323     * Will auto-pick these items from the floor.
324     * Most convenient on ammunition or items you throw.
325     * Takes priority over Auto-Picker - even if it'd normally destroy the object, with this inscription the item will
326       be picked up
327  * `#<NAME>`
328     * Displays the name as if it was an artifact name of the item.
329     * For example: **a Broad Sword (2d5) (+0,+0)** inscribed with `#of Yeeks` will be displayed as **a Broad Sword of Yeeks (2d5) (+0,+0)**
330  * `@X?`
331     * Allows you to use a shortcut to access the item with a given command regardless of the position of the item in your inventory.
332     * `X` is the command, eg `f`
333     * `?` is a character you'll type to access the item. Can be a number or a letter.
334     * For example: Tagging arrows with `@f1` will allow you to add a macro `f1*t` to Fire, select those arrows, target closest, fire.
335  * `@?`
336     * Similar to the above, but affects all commands.
337     * `?` must be a number
338  * `!X`
339     * Prevents accidentally using the item with the specified command.
340     * Trying to use the item with specified command will ask you if you really want to do that.
341     * If you mark it with `!*` it will work for all commands.
342  * `.`
343     * Will prevent "Do you want to teleport?" confirmation from appearing if triggered by the inscribed item.
344  * `$`
345     * Disables warnings generated by the inscribed item.
346  * `^X`
347     * Similar to `!X` but affects equipped items.
348  * `%%` or `%%all`
349     * Inscribing an item with these will replace the inscription with a list of resistances and abilities of the
350       inscribed weapon or armor.
351     * It will only display known resistances and abilities - an item has to be either \*Identified* or researched.
352     * `%%` will only display resistances and abilities which are not directly known from item's ego type.
353
354 You can combine multiple inscriptions. For example `@w0@t1!k!k!d#of Corwin` will:
355
356  * Use `0` with command `w` to equip the item
357  * Use `1` with command `t` to take off the item
358  * Require two confirmations if you try to destroy it
359  * Require a confirmation if you try to drop it
360  * Will display the item as if it was named *of Corwin*