diff options
Diffstat (limited to 'lib/mods/theme/help')
170 files changed, 22229 insertions, 0 deletions
diff --git a/lib/mods/theme/help/ability.txt b/lib/mods/theme/help/ability.txt new file mode 100644 index 00000000..175d6745 --- /dev/null +++ b/lib/mods/theme/help/ability.txt @@ -0,0 +1,115 @@ +|||||oy +~~~~~01|Abilities +#####R=== ToME Abilities === +As well as spending your skill points on *****skills.txt*0[skills], you can also choose +to spend them on abilities. +Abilities are bought once, and then have a permanent effect. You cannot +continue adding skill points into them, (which you can with *****skills.txt*0[skills]) as there +would be no way that these abilities can improve. They are a "one-off +purchase". +As a consequence of this, they are often quite powerful abilities and can +cost quite a few skill points to buy. +Most abilities have a prerequisite skill or stat level which you must reach +before being able to buy. + +For instance, you can invest in the *****ability.txt*03[Tree walking] ability. This will allow +you to pass through dense undergrowth. In order to purchase this skill you must +first have your *****skills.txt*34[Nature] skill at 20 or greater, and then it will cost you 7 +skill points to buy. This means you have to "save up" enough skill points in +order to be able to afford this ability. + +You can access the Ability screen by pressing 'N' (in the original keyset, or +'\N' in the roguelike keyset). Scroll up and down the abilities and then +navigate right to buy selected ability. + +Adapt your character with skills and abilities in order to make it unique, +playable, and maybe even powerful enough to win the game! + +Here follows a list of all the available abilities: + +*****ability.txt*02[Spread blows] *****ability.txt*03[Tree walking] +*****ability.txt*04[Perfect casting] *****ability.txt*05[Extra Max Blow(1)] +*****ability.txt*06[Extra Max Blow(2)] *****ability.txt*07[Ammo creation] +*****ability.txt*08[Touch of death] *****ability.txt*09[Artifact Creation] +*****ability.txt*10[Far reaching attack] *****ability.txt*11[Trapping] +*****ability.txt*12[Undead Form] + +~~~~~02|Abilities|Spread blows +[[[[[BSpread blows] +If a monster dies to your attack but you still have blows left +you won't lose the full turn, allowing you to attack some other +monster in the same turn. +#####UPrereq: Weaponmastery skill@30, Dex@17 +#####rCost: 5 +Warriors (of all types) gain this ability for free at character level 25. +~~~~~03|Abilities|Tree walking +[[[[[BTree walking] +Allows you to walk in dense forest. +#####UPrereq: Nature skill@20 +#####rCost: 7 +Ents and Wood Elves are born with this ability. +~~~~~04|Abilities|Perfect casting +[[[[[BPerfect casting] +Allows you to reach 0% failure rate on spells. +#####UPrereq: Magic skill@35 +#####rCost: 6 +Priests and Mages (of all types) are born with this ability. +~~~~~05|Abilities|Extra Max Blow 1 +[[[[[BExtra Max Blow(1)] +Increases your max possible blows number by 1. +#####UPrereq: Combat skill@10 +#####rCost: 7 +Warriors (of all types) and Paladins are born with this ability. +Rogues (of all types) gain this ability for free at character level 10. +~~~~~06|Abilities|Extra Max Blow 2 +[[[[[BExtra Max Blow(2)] +Increases your max possible blows number by 1 (Cumulative with +Extra Max Blow(1)). +#####UPrereq: Combat skill@20, Extra Max Blow(1) +#####rCost: 7 +Warriors (of all types) are born with this ability. +~~~~~07|Abilities|Ammo creation +[[[[[BAmmo creation] +Allows you to create shots, arrows and bolts from various materials. +You can always make shots. +At Archery level 10 you can start making arrows. +At Archery level 20 you can start making bolts. +#####UPrereq: Archery skill@10 +#####rCost: 8 +Archers (of all types) gain this ability for free at character level 2. +~~~~~08|Abilities|Touch of death +[[[[[BTouch of death] +Your melee blows can insta-kill, but you only receive 1/3 of the experience +for that kill. +You must activate this from your 'm' menu. +#####UPrereq: Necromancy skill@50, Combat skill@40, DEX@30, STR@30 +#####rCost: 15 +~~~~~09|Abilities|Artifact Creation +[[[[[BArtifact Creation] +In combination with a high alchemy skill this ability will let you +design your very own artifacts. +Prereq: Alchemy@40, INT@35, WIS@35 +#####rCost: 70 +~~~~~10|Abilities|Far reaching attack +[[[[[BFar reaching attack] +You can attack an enemy one square far using a long polearm. +At high levels of Polearm-mastery skill, you can even hit two enemies at once. +#####UPrereq: Combat@15, Polearm-mastery@15 +#####rCost: 10 +~~~~~11|Abilities|Trapping +[[[[[BTrapping] +Enables you to set traps which harm monsters. +#####UPrereq: Disarming@15 +#####rCost: 10 +Rogues are born with this ability. +~~~~~12|Abilities|Undead Form +[[[[[BUndead Form] +With this ability your character receives a small amount of Death Points (DP) +when they 'die'. Every normal (+0 speed) turn, one DP +is lost; you can regain it like you would do with Hit Points. +If you manage to kill enough monsters before your DP goes below 0, your +character is brought back to life. +#####UPrereq: Necromancy@30, INT@25 +#####rCost: 15 +Necromancers gain this ability for free at character level 25. + diff --git a/lib/mods/theme/help/advanced.hlp b/lib/mods/theme/help/advanced.hlp new file mode 100644 index 00000000..3f6fe4bd --- /dev/null +++ b/lib/mods/theme/help/advanced.hlp @@ -0,0 +1,15 @@ +|||||oy +#####RWelcome to the ToME Advanced Help System. +#####R============================================= + +Please choose one of the following help files: + + *****/aoption.txt*0[(a) Options] + *****/bmacrofaq.txt*0[(b) Macros] + *****/cautomat.txt*0[(c) Automatizer help] + (d) Lua scripting help - coming soon + *****/edebug.txt*0[(e) Debug commands] + *****/fversion.txt*0[(f) Version information] A history of ToME's roots + + *****/zhelp.hlp*0[(z) Main Help menu] + diff --git a/lib/mods/theme/help/attack.txt b/lib/mods/theme/help/attack.txt new file mode 100644 index 00000000..c72e9725 --- /dev/null +++ b/lib/mods/theme/help/attack.txt @@ -0,0 +1,148 @@ +|||||oy +~~~~~01|Attacking Monsters +~~~~~02|Monsters|Attacking +#####R=== Attacking and Being Attacked === + +{{{{{<p>}Attacking is simple in ToME; attempting to move over a creature +attacks it. It is also possible to attack from a distance by firing a missile +or by magical means (wand, rod, spell, etc). Creatures attack in the same way. +This means that if you do not wish to melee with a creature, it is wise to keep +distant from it. This strategy is not perfect -- some monsters, such as +dragons, have a way to attack from a distance. + +Some creatures, such as Ghosts, have the ability to pass through walls. +To attack creatures (that you can see) who are currently in a wall, +attempt to move over it (even if you cannot pass through walls, the +attack will still happen). Monsters will take less damage from attacks +while they are in walls. Also, if you cannot see the monster (e.g. if you +are blind, or it is invisible and you do not have see invisible), this +will not work: you'll have to try to tunnel. Most spells and magic devices +cannot target monsters in walls. In situations like this, it is usually wise to +lure the monster out of the wall before attacking it. + +Melee attacks are handled as such: +#####G To-hit: + Your strength grants a bonus or penalty to-hit + Your class might grant a bonus or penalty to-hit + Your skill with specific kinds of weapons gives a bonus + to-hit (e.g.: Swordmastery gives a to-hit bonus + when using swords) + Enchantments on your weapon grant a bonus or penalty to-hit + Certain rings (accuracy, slaying) may also grants a bonus + or penalty to-hit + Your Tactic setting may give bonuses o penalties to-hit + (to change it, press 'C' and then 't' or 'T') + Other temporary effects (berserk, etc) might affect your + chance to hit + The armor rating of the monster you're attacking makes a + big difference + +#####G Blows: + Your strength and dexterity affect how many blows you get + Your class and level might affect how many blows you get + The weight of the weapon very likely will affect how many + blows you get + Certain skills (e.g. Swordmastery) may affect how many blows + you get with particular weapons + Enchantments on your weapon might also affect how many + blows you get (this is rare) + Certain very rare rings (of attacks) may also affect how + many blows you get + +#####G Damage: + The base damage of your weapon is rolled + Strength grants a bonus or penalty + Your class might grant a bonus or penalty + Combat and Weaponmastery skills increase your melee damage + Ranged masteries increase the damage multiplier of slings, + bows, crossbows or boomerangs(see below) + Enchantments on your weapon might also grant a bonus or + penalty + Your Tactic setting may give bonuses o penalties to damage + (to change it, press 'C' and then 't'or'T') + Temporary effects also might grant a bonus or penalty + +So, each blow you are entitled to is checked for a hit. If this is the case, +the damage is then applied to the monster. Note that unless you have some +barehanded combat training or are possessing a monster, melee without a weapon +will result in a single blow that does base damage of 1d1. This might, however, +be useful in attacking certain rare monsters that destroy weapons. + +Combat with a bow/sling is similar, except ammo is used (which will eventually +run out, requiring replacement). Bows don't have a base damage rating (ammo +does), instead having a damage multiplier. Bows can, however, be enchanted, +and enchantment on bows and arrows is cumulative (meaning that well-enchanted +bows and arrows can be one of the more effective weapons in the game. They +do, however, tend to be very expensive, as non-artifact arrows frequently break +after being fired). +Using ammo without the appropriate bow generally has poor results. +~~~~~03|Armor +#####R=== Armor === + +As the armor class of a monster greatly affects how hard it is for it +to be hit, your armor class affects how hard it is for it to hit you. +A high armor rating will make it much easier to survive deep in the dungeon. +For a warrior style class (Unbelievers, Fighters, Archers, etc), it is +generally wise to wear as much and as powerful armor as possible (subject +to weight limitations, of course). Spellcasting classes, however, have +limits on how much armor they can wear before it disrupts their motion +and makes it hard for them to cast spells properly. For many of these classes, +gloves are especially bad for spellcasting. Monks and Rogues skilled +at dodging will often find heavy armor cumbersome, too. +Armor has a base rating and an enchantment rating. The base rating is constant +for the type of armor (e.g. paper armor always has a base rating of 4), and +the enchantment depends on the item. There are also ways to further enchant +armor you have. Certain very powerful enchantments grant resistances to +specific forms of magical attacks. +~~~~~04|Attacking Monsters|Resistances +~~~~~05|Armor|Resistances +#####R=== Resistances and typed attacks=== +Many kinds of monsters, traps, and other effects do damage that has a type. +Types can have side effects in addition to the raw damage they deal. Certain +enchanted items can grant resistances, reducing the raw damage and possibly +reducing or eliminating the side effects. Some monsters also have resistances, +so watching the messages when attacking a monster can often reveal that a +particular attack is ineffective. +~~~~~06|Attacking Monsters|Damage Effect type (Fire/cold/nether etc) +~~~~~09|Damage Effects +#####GLow attacks + Fire - Destroys weapons, armor, scrolls, and staves. Reduces strength. + Cold - Shatters potions. + Elec - Reduces dexterity. + Acid - Reduces bonuses on equipped armor, reduces charisma + +#####GMiddle attacks + Poison - Player becomes poisoned + Light - Blinds player, perma-lights area + Dark - Blinds player, darkens area + Confusion - Confuses player + +#####GHigh attacks + Nether - Drains experience + Nexus - Scrambles statistics, teleports player randomly + Disenchantment - Reduces bonuses on equipped items + Chaos - Confuses, drains life, causes hallucination, and more + Sound - Shatters potions + Shards - Cuts player + +#####GUnresistable attacks + Water - Stuns player + Ice - Stuns player, shatters potions + Plasma - Stuns player, otherwise same as fire attacks + Force - Pushes player a few squares back + Inertia - Slows player + Gravity - Slows and teleports player a few squares + Disintegration - Destroys items on ground, destroys walls + Mana - Destroys items on ground +~~~~~07|Monsters|Monster Memory +#####R=== Monster Memory === + +The thousands of different creatures in ToME have many different +characteristics, including spells, resistances, health, attacks, and speed. +The information you have learned about each monster from your encounters +with them is recorded in the monster memory (accessed with '/' or by 'l'ooking +at a monster). It is possible to eventually learn all the characteristics +of any given monster by interacting with them enough, but this is not always +desirable (hanging around great hell wyrms, for example, can be hazardous +to one's health). Certain spells may help you learn faster, as well as +research centres in town. diff --git a/lib/mods/theme/help/automat.txt b/lib/mods/theme/help/automat.txt new file mode 100644 index 00000000..bf6478f8 --- /dev/null +++ b/lib/mods/theme/help/automat.txt @@ -0,0 +1,504 @@ +|||||oy +~~~~~01|Automatizer +~~~~~02|Auto pick-up +~~~~~03|Auto destroy +~~~~~04|Autosquelch +#####R /----------------------------------------\ +#####R < The Automatizer > +#####R \----------------------------------------/ + +#####GWhat is the Automatizer? +The automatizer is an advanced auto-pickup or auto-squelch (auto-destroyer). At +a basic level, it will allow you to automatically destroy things that you have +no use for once you walk over them, providing that you have identified one of +them with your current character. + +#####GIs that it? +Well no. The automatizer is far more flexible than that. The old-fashioned auto +squelch allowed you to destroy things dependent on how they pseudo-id'd - you +could auto-destroy all {cursed} swords for instance. +This is fine to start with, but once you get deep in the dungeon, and have a lot +of money and a decent weapon, you'll be interested in destroying {average} and +{good} items too right? Well the automatizer allows you to define destruction of +things providing you are of a certain level. + +#####GSounds quite cool, but wha... +STOP RIGHT THERE! I haven't finished yet! Let's look at some other examples. +Most of the time, scrolls of darkness are pretty useless. Unless you are a +vampire, or an alchemist, right? So you might think it was no good to add +auto-destroy of scrolls of darkness to the automatizer. But you'd be wrong, for +you can add rules that are dependent on certain conditions, like that you are +of a certain race, or class. + +#####GHey this is sounding good. What if it destroys my artifacts? +It can't. Artifacts can never be destroyed, by the automatizer. However, watch +out for items that are VERY cool but not artifacts... you wouldn't want to go +destroying boots of speed would you? Fortunately there are provisions for this +too, you could set a rule that destroyed all excellent boots (providing you were +past character level 45 say), but not if they were boots of speed. + +#####GWoah! This sounds amazing! +Yes it is, isn't it. + +#####GSo how do I use it? +Well the very simplest way is as follows. When you hit 'k' (^D in the roguelike +keyset) to destroy an item, you'll see that one option is "$ new automatizer +rule(OFF)". If you want to destroy all future items like that that you find, +then hit the $ key. You'll see that (OFF) changes to (ON). Now pick the item you +want to destroy. Let's say it is a Potion of Salt Water. You would now, as +normal, see a message "You destroy a Potion of Salt Water". Following this you +get a prompt, "Destroy all of the same [T]ype, [F]amily, or [N]ame, also use +[S]tatus (no)?". Let's take the easy one first and hit 'n' to go with name. +You'll now see a message, "Rule added, please go to the automatizer screen +(press = then T) to save the modified ruleset". Let's do that then, shall we. If +this is the first time you have used the automatizer with this savefile, you'll +be asked to enable it as you hit T. Confirm that you would like to enable it, +otherwise it won't work. + +#####GWhat's the point in having it disabled then? +Well let's say you spotted something that you weren't sure how it would be +affected by your rules, but didn't want to destroy it; you could just disable +the automatizer for a moment and check it over before deciding what to do with +it and switching the automatizer back on. + +#####GHmmm, ok. So I've enabled the automatizer, now what? +Well, you'll see a screen like this: + +&&&&&B/B-B-B-B-BRBuBlBeBsB-B-B-B-B-B/B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B\ +&&&&&B|GsGaGlGtG GwGaGtGeGrB B B w B|G<GrGuGlGeB BnBaBmBew=w"ysyaylyty ywyaytyeyrw"B BtByBpBew=w"ydyeysytyryoyyw"G>B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wfwowowdB B B B B B B B B w B|G G G G G<GnGaGmGeG>wpwowtwiwownw wowfw wswawlwtw wwwawtwewrg<g/gngagmgeg>B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g<g/grguglgeg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/ +&&&&&B|B B B B B B B B B B B B B w B|w BuBpW/BdBoBwBnW WtWoW WsWcWrWoWlWlW,W BtBaBbW WtWoW WsWwWiWtWcWhW WtWoW WtWhWeW WrWuWlWeW WwWiWnWdWoWww w w w w w w w w w w w w +&&&&&B|w w w w w w w w w w w w w w B|w BuW/BdW WtWoW WmWoWvWeW WrWuWlWeWsW,W BnWeWwW WrWuWlWeW,W BrWeWnWaWmWeW WrWuWlWeW,W BsWaWvWeW WrWuWlWeWsw w w w w w w w w w w w +&&&&&B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/w RkW WtWoW rdrirsrarbrlreW WtWhWeW WaWuWtWoWmWaWtWiWzWeWrw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w + + +(snipped for brevity). + +The automatizer rules are written in XML, so if you're familiar with that format +you shouldn't find things too difficult. It's also similar in format to HTML, as +you may notice from the way that there are opening tags (<name>) and closing +tags (</name>), and that everything between those tags is affected by that +rule. + +#####GXML? HTML? What is this? Isn't ToME enough acronyms to be going on with? +OK, so you don't know anything about mark-up languages, it's no problem. Let's +take a look at the automatizer screen bit by bit, starting with the instructions +bottom right. + +up/down to scroll. Well as you move the up/down cursor keys or number keys, a +different rule name is highlighted in the left hand window, and that rule is +displayed in the right hand window. +tab to switch to the rule window. Does what it says on the tin: switches to the +rule window (the right hand pane) to allow editing of existing rules. +u/d to move rules. Pressing 'u' or 'd' will move the rule up or down the order +displayed in the left hand window. Purely for cosmetic reasons. +new rule. Adds the beginning of a new rule. +rename rule. This is handy, as every rule added from the destroy prompt (as +explained above) is automatically named 'destroy', which gets a bit confusing +when you have 50 or so rules... renaming your rules will make them much easier +to edit later. +save rules. Saves all existing rules to a filename you designate (default is +automat.atm). Don't forget to do this after adding new rules/before exiting the +game. +k to disable the automatizer. Disables the automatizer, preserving the rules you +have made. + +#####GYeah yeah, so what about the rule window on the right hand side itself? +OK, here we go. This is the real juicy stuff. + +Anything inside pointy brackets (greater than and less than signs) is called a +tag. You'll notice that each tag opens with a word, and then that same word +appears in another tag later on, preceded by a slash. These are referred to as +opening tags (like <name> ) and closing tags (like </name> ). Everything within +a set of closing and opening tags is affected by those tags. This will make more +sense as we continue. Tags and the things they enclose are like "mini-rules" +which will together make up one rule. I call these mini-rules, clauses. + +the first line: +<rule name="destroy" type="destroy"> +Each rule starts with the tag <rule>, and this contains the rule name, and the +rule type. The rule name is how it is identified in the left hand window, and +need not be unique. The rule type will be either "destroy" (destroys items when +conditions stated below are met) or "pickup" (picks up item when conditions are +met) or "nothing" (neither picks up, nor destroys item when conditions are met) + +The second line: + <name>Potion of Salt Water</name> +This tells us that for the rule to be carried out, the name of the item must be +"Potion of Salt Water" + +The third line: +</rule> +This tells us the rule is ended. + +In total then, the rule named "destroy" checks to see if the name of every item +is Potion of Salt water, and if it is, it destroys it. + +Nice and simple huh? + +#####GYes Yes, very simple. It doesn't look very advanced at the moment. +Well, we've barely scratched the surface. +Let's take a look at those other options we got at the destroy prompt. Let's say +I was at a stage in the game where I wanted to be able to switch on an auto- +destroy for all swords that pseudo-id'd as {average}. So let's say I have a +dagger in my backpack, and I want to create an auto-destroy rule for that and +all subsequent swords... This is what I'd do: +Hit 'k' to destroy items and hit '$' to turn on automatizer rules. Then I'd +select the dagger and confirm the destruction. Hit 's' to switch the status +toggle. This toggle will include (when ON) how the dagger pseudo-ids, and +finally hit 'f' to add a rule saying destroy by family. What you'll see in the +automatizer screen now is this: + +&&&&&B/B-B-B-B-BRBuBlBeBsB-B-B-B-B-B/B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B\ +&&&&&B|GdGeGsGtGrGoGyB B B B B B w B|G<GrGuGlGeB BnBaBmBew=w"ydyeysytyryoyyw"B BtByBpBew=w"ydyeysytyryoyyw"G>B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wdwewswtwrwowyB B B B B B w B|G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wfwowowdB B B B B B B B B w B|G G G G G G G G G<GtGvGaGlG>w2w3g<g/gtgvgaglg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G<GsGtGaGtGuGsG>wawvwewrwawgweg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g<g/grguglgeg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w B| +&&&&&B|B B B B B B B B B B B B B w B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/ +&&&&&B|B B B B B B B B B B B B B w B|w BuBpW/BdBoBwBnW WtWoW WsWcWrWoWlWlW,W BtBaBbW WtWoW WsWwWiWtWcWhW WtWoW WtWhWeW WrWuWlWeW WwWiWnWdWoWww w w w w w w w w w w w w +&&&&&B|w w w w w w w w w w w w w w B|w BuW/BdW WtWoW WmWoWvWeW WrWuWlWeWsW,W BnWeWwW WrWuWlWeW,W BrWeWnWaWmWeW WrWuWlWeW,W BsWaWvWeW WrWuWlWeWsw w w w w w w w w w w w +&&&&&B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/w RkW WtWoW rdrirsrarbrlreW WtWhWeW WaWuWtWoWmWaWtWiWzWeWrw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w + +#####GOK, well I can see the pseudo-id status is there, what's that tval thing? And +#####Gwhere does it say swords? +Well actually the tval thing is where it says swords! This is what is added by +the 'destroy by family' option. + +It's probably worth explaining a bit here about the internal structure of ToME +code. Don't worry it's not too scary. In ToME, all objects are divided into +types: swords, axes, hafted-weapons, scrolls, rings etc. Every type is further +divided into sub-types. Eg swords are divided into daggers, broad swords, two- +handed swords and so on. Scrolls are divided into their specific actions; +scrolls of light, scrolls of satisfy hunger etc. Each type has a number assigned +to it, that never changes, and so does each sub-type. In this way we can +identify an exact object using just two values: it's type, or tvalue (tval) and +it's sub-type, or svalue (sval). You see where we're going with this? +Now daggers have a tval of 23 and an sval of 4. So you can see that we've said +in the rule that all things with a tval of 23 and a status of average can be +destroyed. + +#####GAh, right. I see. And what's with the <and> tags? +Well, everything in those tags must be true for the rule to carry out. If we had +the <tval>23</tval> and the <status>average</average> lines without the <and> +tags, it would not be clear whether we wanted just one of those clauses to be +true for the rule to be carried out, or both of them. + +#####GErr... +In other words, without the <and> tags it might look like we wanted to destroy +a) EVERYTHING that pseudo id'd as average, and +b) EVERY sword, regardless of how it pseudo-id'd! + +#####GRight. What if I did want a rule that was more general, and had either/or +options in it? +Then there are tags to do that - the <or> </or> tags. If ANY of the clauses +return as true within or tags, then the rule is carried out. Substitute <or> +tags for the <and> tags in our sword example above, and the rule will operate in +the rather unhelpful way I explained above (all {average} things destroyed, and +all swords destroyed, regardless of how they pseudo-id). So essentially, if your +rule has more than one clause, you will need to include either <and> tags or +<or> tags, or in some cases both. + +#####GOK and so what does the [T]ype option do? +It merely adds the sval, thus narrowing down the parameters for the auto- +destroy. For instance if I'd chosen to destroy by type rather than family in the +last example, we'd have ended up with this: + +&&&&&B/B-B-B-B-BRBuBlBeBsB-B-B-B-B-B/B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B\ +&&&&&B|GdGeGsGtGrGoGyB B B B B B w B|G<GrGuGlGeB BnBaBmBew=w"ydyeysytyryoyyw"B BtByBpBew=w"ydyeysytyryoyyw"G>B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wdwewswtwrwowyB B B B B B w B|G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wfwowowdB B B B B B B B B w B|G G G G G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G<GtGvGaGlG>w2w3g<g/gtgvgaglg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G<GsGvGaGlB BmBiBnw=w"y4w"B BmBaBxw=w"y4w"G>g<g/gsgvgaglg>B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G<GsGtGaGtGuGsG>wawvwewrwawgweg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g<g/grguglgeg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w B| +&&&&&B|B B B B B B B B B B B B B w B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/ +&&&&&B|B B B B B B B B B B B B B w B|w BuBpW/BdBoBwBnW WtWoW WsWcWrWoWlWlW,W BtBaBbW WtWoW WsWwWiWtWcWhW WtWoW WtWhWeW WrWuWlWeW WwWiWnWdWoWww w w w w w w w w w w w w +&&&&&B|w w w w w w w w w w w w w w B|w BuW/BdW WtWoW WmWoWvWeW WrWuWlWeWsW,W BnWeWwW WrWuWlWeW,W BrWeWnWaWmWeW WrWuWlWeW,W BsWaWvWeW WrWuWlWeWsw w w w w w w w w w w w +&&&&&B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/w RkW WtWoW rdrirsrarbrlreW WtWhWeW WaWuWtWoWmWaWtWiWzWeWrw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w + +You can see in this example that we have nested <and> tags. Evaluating the tags +from the ones nested deepest first we can see that if an object has a tval of 23 +and an sval between the values of 4 and 4 (i.e. if it is 4) then the rule will +check against the next part, which is to see if the object identifies {average}. +If it does, then all the clauses have been met and rule is carried out. In +short, it destroys all average daggers, rather than all average swords. Strictly +speaking the nested <and> tags aren't needed, but they do no harm, and are added +automatically when destroying by [T]ype. + +#####GThis is all well and good but the numbers are going to get rather confusing +#####Garen't they? Be much easier if I could just write 'swords' or 'daggers'. +Well, you can. Kind of. Instead of using the admittedly rather obtuse numbers, +you can use the name of that tvalue rather than the number it represents. So +instead of <tval>23</tval> you could write <tval>TV_SWORD</tval>. + +#####GAh that would be better. But where can I find out what all the names, and +#####Gnumbers of tvalues are? +Well I've written a *****defines.txt*0[file] which lists tvalues and one which lists svalues for you +to check on, and you may want to check the objects entry in k_info.txt in your +lib/edit directory. If you look at the entry for dagger you'll see: + +N:43:& Dagger~ +G:|:W +I:23:4:0 +W:0:0:12:10 +A:0/1:5/1:10/1:20/1 +P:0:1d4:0:0:0 +<snip> +The only line we're interested in is the one that starts I (for Index). The +first number is the tval, and the second is the sval. +Of course you could always rename your rule to make things clearer. + +#####GOK so you mentioned something about setting rules up that happen only if a +#####Gplayer is a certain level? +Yeah, good point. Well, let's develop our destroy average swords rule for the +moment. Let's say we always wanted to destroy average swords by the time we got +to character level 20. They don't earn enough gold to make it worth carrying +back to town, and we'll have a better weapon by then anyway. So here we are in +the automatizer screen, with the destroy sword rule displaying in the right hand +window. If we hit tab, the right window becomes active and the rules at the +bottom change: + +&&&&&B/B-B-B-B-BRBuBlBeBsB-B-B-B-B-B/B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B\ +&&&&&B|gdgegsgtgrgogyB B B B B B w B|v<vrvuvlveB BnBaBmBew=w"ydyeysytyryoyyw"B BtByBpBew=w"ydyeysytyryoyyw"v>B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wdwewswtwrwowyB B B B B B w B|G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wfwowowdB B B B B B B B B w B|G G G G G G G G G<GtGvGaGlG>w2w3g<g/gtgvgaglg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G<GsGtGaGtGuGsG>wawvwewrwawgweg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|v<v/vrvuvlvev>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/ +&&&&&B|B B B B B B B B B B B B B w B|w BuBpW/BdBoBwBnW/BlBeBfBtW/BrBiBgBhBtW WtWoW WnWaWvWiWtWaWgWeW WrWuWlWeW,W B9W/B3W/B7W/B1W WtWoW WsWcWrWoWlWlw w w w w w w w w w +&&&&&B|w w w w w w w w w w w w w w B|w BtBaBbW WfWoWrW WsWwWiWtWcWhW,W BaWdWdW WcWlWaWuWsWeW,W BdWeWlWeWtWeW WcWlWaWuWsWeW/WrWuWlWew w w w w w w w w w w w w w w w w w +&&&&&B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w + +You can see the <rule> tags have changed to purple, indicating they are the +active ones, that all key presses will act upon. Let's just quickly scoot +through these new commands: +up/down/left/right to navigate rule: These will change which clause is active, +enabling you to delete that clause, or add further clauses inside that one if it +so allows it. +9/3/7/1 to scroll: scrolls the whole screen which can become useful if you have +a particularly long rule or one with lots of nested clauses. +tab for switch: will make the left-hand window active again. +add clause: adds a new clause within the active one, providing the active clause +is either a <and>, <or> or <not> tag. +delete clause/rule: deletes the active clause, and any clauses nested within +that one. Therefore if the <rule> tags are active, the whole rule will be +deleted. Beware! + +So if we now hit our right arrow we see that the <and> tags are active. We can +now add a new clause here. Let's do so by pressing 'a'. You'll now see a list of +different types of clauses you can add, which you simply scroll through using up +and down keys, and select by hitting enter. A brief description of the selected +clause is shown in the right hand window. Scroll down to the 'level' rule type +and hit enter. You'll be asked to enter a player level. Let's go for 20. You'll +then be asked for a maximum level, put 50, as we want the rule to be true from +level 20 and upwards. You'll now see our rule displays as: + +&&&&&B/B-B-B-B-BRBuBlBeBsB-B-B-B-B-B/B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B\ +&&&&&B|gdgegsgtgrgogyB B B B B B w B|G<GrGuGlGeB BnBaBmBew=w"ydyeysytyryoyyw"B BtByBpBew=w"ydyeysytyryoyyw"G>B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wdwewswtwrwowyB B B B B B w B|v v v v v<vavnvdv>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wfwowowdB B B B B B B B B w B|G G G G G G G G G<GtGvGaGlG>w2w3g<g/gtgvgaglg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G<GsGtGaGtGuGsG>wawvwewrwawgweg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G<GlGeGvGeGlB BmBiBnw=w"y2y0w"B BmBaBxw=w"y5y0w"G>g<g/glgegvgeglg>B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|v v v v v<v/vavnvdv>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g<g/grguglgeg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/ +&&&&&B|B B B B B B B B B B B B B w B|w BuBpW/BdBoBwBnW/BlBeBfBtW/BrBiBgBhBtW WtWoW WnWaWvWiWtWaWgWeW WrWuWlWeW,W B9W/B3W/B7W/B1W WtWoW WsWcWrWoWlWlw w w w w w w w w w +&&&&&B|w w w w w w w w w w w w w w B|w BtBaBbW WfWoWrW WsWwWiWtWcWhW,W BaWdWdW WcWlWaWuWsWeW,W BdWeWlWeWtWeW WcWlWaWuWsWeW/WrWuWlWew w w w w w w w w w w w w w w w w w +&&&&&B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w + +So there we go. A rule which will destroy all {average} swords once the player +is past character level 20. + +#####GHmmm I've tried this, it doesn't destroy cursed swords though... +Nope. You haven't told it to. If you want a scaling rule, which always destroys +cursed swords and then destroys average swords at character level 20, then {good} +swords at character level 35, have a look at this, rather more complicated rule. + +&&&&&B/B-B-B-B-BRBuBlBeBsB-B-B-B-B-B/B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B\ +&&&&&B|wswhwiwewlwdB B B B B B B w B|G<GrGuGlGeB BnBaBmBew=w"ysywyoyrydysw"B BtByBpBew=w"ydyeysytyryoyyw"G>B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wbwowwB B B B B B B B B B w B|G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|whwrwdw wawrwmwowuwrB B B w B|G G G G G G G G G<GtGvGaGlG>w2w3g<g/gtgvgaglg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wawxwewsB B B B B B B B B w B|G G G G G G G G G<GoGrG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|whwewlwmwsB B B B B B B B w B|G G G G G G G G G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wswowfwtw wawrwmB B B B B w B|G G G G G G G G G G G G G G G G G<GlGeGvGeGlB BmBiBnw=w"y0w"B BmBaBxw=w"y5y0w"G>g<g/glgegvgeglg>B B B B B B B B B B B B B B B w B| +&&&&&B|wbwowlwtwsB B B B B B B B w B|G G G G G G G G G G G G G G G G G<GoGrG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wbwowowtwsB B B B B B B B w B|G G G G G G G G G G G G G G G G G G G G G<GsGtGaGtGuGsG>wvwewrwyw wbwawdg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wgwlwowvwewsB B B B B B B w B|G G G G G G G G G G G G G G G G G G G G G<GsGtGaGtGuGsG>wbwawdg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wpwowlwewawrwmwsB B B B B w B|g g g g g g g g g g g g g g g g g<g/gogrg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wcwlwowawkB B B B B B B B w B|g g g g g g g g g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|GsGwGoGrGdGsB B B B B B B w B|G G G G G G G G G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|whwawfwtwewdwsB B B B B B w B|G G G G G G G G G G G G G G G G G<GlGeGvGeGlB BmBiBnw=w"y1y5w"B BmBaBxw=w"y5y0w"G>g<g/glgegvgeglg>B B B B B B B B B B B B B B w B| +&&&&&B|wawrwrwowwwsB B B B B B B w B|G G G G G G G G G G G G G G G G G<GsGtGaGtGuGsG>wawvwewrwawgweg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wswhwowtB B B B B B B B B w B|g g g g g g g g g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wbwowowmwewrwawnwgB B B B w B|G G G G G G G G G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wtwowrwcwhB B B B B B B B w B|G G G G G G G G G G G G G G G G G<GlGeGvGeGlB BmBiBnw=w"y2y5w"B BmBaBxw=w"y5y0w"G>g<g/glgegvgeglg>B B B B B B B B B B B B B B w B| +&&&&&B|wrwowdw wtwiwpwsB B B B B w B|G G G G G G G G G G G G G G G G G<GsGtGaGtGuGsG>wgwowowdg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wpwowtwiwownwsB B B B B B w B|g g g g g g g g g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wrwiwnwgwsB B B B B B B B w B|g g g g g g g g g<g/gogrg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wwwawnwdwsB B B B B B B B w B|g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wmwuwswhwrwowowmwsB B B B w B|g<g/grguglgeg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wswcwrwowlwlwsB B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wawmwuwlwewtwsB B B B B B w B|w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w B| +&&&&&B|wpwawrwcwhwmwewnwtwsB B B w B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/ +&&&&&B|wswhwawpwew wpwowtB B B B w B|w BuBpW/BdBoBwBnW WtWoW WsWcWrWoWlWlW,W BtBaBbW WtWoW WsWwWiWtWcWhW WtWoW WtWhWeW WrWuWlWeW WwWiWnWdWoWww w w w w w w w w w w w w +&&&&&B|wswtwawvwewsw w w w w w w w B|w BuW/BdW WtWoW WmWoWvWeW WrWuWlWeWsW,W BnWeWwW WrWuWlWeW,W BrWeWnWaWmWeW WrWuWlWeW,W BsWaWvWeW WrWuWlWeWsw w w w w w w w w w w w +&&&&&B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/w RkW WtWoW rdrirsrarbrlreW WtWhWeW WaWuWtWoWmWaWtWiWzWeWrw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w + +#####GWoah! What the heck is that?! +OK ok slow down a minute. Look at it carefully and a clause at a time. It's not +difficult. Let's take it from the top. It's a destroying rule called swords. It +opens with some <and> tags. The object must be a sword (tval 23). Now we have an +OR tag, so we know that there are going to be some options: +option 1: the player is between level 0 and level 50, and the sword pseudo id's +as either cursed or worthless. +option 2: the player is above character level 15, and the sword pseudo id's as +average. +option 3: the player is above character level 25, and the sword pseudo id's as +good. +If any of these options are true, the rule is carried out. This rule could +easily be copied for other weapons or pieces of armour, substituting only the +tval, and perhaps the name. + +#####GHmmm ok. looks good. I might want to change those character level values +#####Gthough. they look a bit low... +Well yeah, that's up to your playing style I guess... If you want to edit +clauses directly rather than delete and re-add them, you might want to edit the +automat.atm file directly. Just open it in your text editor (it's located in +your lib/user directory or in ~/.tome on multiuser systems) and you'll see the +format is identical to how it is displayed in the automatizer file. Just watch +your spellings, and keep a back-up of the original to replace if things go +wrong. Don't mess about in there if you feel unsure of what you're doing though. + +#####GSo what about those examples you gave up above? Like destroying scrolls of +#####Gdarkness unless you are a vampire or an alchemist? +OK, let's add this rule from scratch rather than from the destroy item prompt. +In the automatizer screen, hit 'n' for new rule. It asks for a name and a type +of rule (destroy/pickup/nothing). I called my rule "? of darkness", and it's a +destroy rule. It is worthwhile thinking at this point how the rule is going to +be structured; for very complicated rules pen and paper may help. We're going to +need to define the object (either by name, or by tval and sval) then we're going +to say unless the player race modifier is vampire, or the player class is +alchemist. So we are obviously going to have more than one clause, and the +clauses are going to have to BOTH be true for the rule to take effect so the +first clause we add is an <and> one. So hit 'a' for add clause and enter to +select the <and> clause. Lets now hit our right arrow, so the <and> tags are +active, and add a new rule. We can now select the <name> tags. At this point +we're prompted for the name. Now it's not case-sensitive, but you do need to +spell it correctly! +With the <and> tags still highlighted we now want to add our "unless vampire or +alchemist" clause. Seeing as this is an "unless" type clause, we start with a +<not> tag. So again, 'a'dd a new clause, and select <not>. +Now make the <not> tag active by moving right and down with the cursor keys. We +want "EITHER vampire or alchemist" so we include <or> tags, again by moving +across to make the <not> tags active and 'a'dding a new <or> clause. Then select +the <or> tags and 'a'dd a new <subrace> clause. Enter 'vampire'. +So the last part is to add alchemist. Now this might at first glance seem to be +a simple case of 'a'dding a new clause of the <class> type, within the <or> +tags, and there is certainly nothing 'wrong' with doing this. At present there +is no way for non-alchemists to get the alchemy skill, but it is sometimes best +to 'future-proof' against such possibilities. That's what we're going to do +here. +So rather than add a <class> clause, we're going to add a <skill> clause. +With the <or> tags active, 'a'dd a new <skill> clause. You're first asked for a +minimum skill level. Well, we can't use any skill unless we have 1.00 whole +skill points in it or more, so we can put 1 in here. We're then asked for a +maximum skill level, so we'll put in 50 here. The skill name must be spelled +correctly (as it appears on the skill screen) so we put 'Alchemy' here. Your +complete rule now appears as follows: + +&&&&&B/B-B-B-B-BRBuBlBeBsB-B-B-B-B-B/B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B\ +&&&&&B|G?G GdGaGrGkGnGeGsGsB B B w B|G<GrGuGlGeB BnBaBmBew=w"y?y ydyayrykynyeysysw"B BtByBpBew=w"ydyeysytyryoyyw"G>B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wswwwowrwdwsB B B B B B B w B|G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wswawlwtw wwwawtwewrB B B w B|G G G G G G G G G<GnGaGmGeG>wSwcwrwowlwlw wowfw wdwawrwkwnwewswsg<g/gngagmgeg>B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wfwowowdB B B B B B B B B w B|G G G G G G G G G<GnGoGtG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G<GoGrG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GsGuGbGrGaGcGeG>wvwawmwpwiwrweg<g/gsgugbgrgagcgeg>B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GsGkGiGlGlB BmBiBnw=w"y1w"B BmBaBxw=w"y5y0w"G>wAwlwcwhwewmwyg<g/gsgkgiglglg>B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g g g g g g g g g<g/gogrg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g g g g g<g/gngogtg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g<g/grguglgeg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/ +&&&&&B|B B B B B B B B B B B B B w B|w BuBpW/BdBoBwBnW WtWoW WsWcWrWoWlWlW,W BtBaBbW WtWoW WsWwWiWtWcWhW WtWoW WtWhWeW WrWuWlWeW WwWiWnWdWoWww w w w w w w w w w w w w +&&&&&B|w w w w w w w w w w w w w w B|w BuW/BdW WtWoW WmWoWvWeW WrWuWlWeWsW,W BnWeWwW WrWuWlWeW,W BrWeWnWaWmWeW WrWuWlWeW,W BsWaWvWeW WrWuWlWeWsw w w w w w w w w w w w +&&&&&B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/w RkW WtWoW rdrirsrarbrlreW WtWhWeW WaWuWtWoWmWaWtWiWzWeWrw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w + +You'll notice I've also renamed the rules to make things a bit more legible. + +#####GOK I'm getting there now, what about the boots of speed thing you talked about? +Heh. Take a look at this, and see if you can work out what it's doing first +before I talk you through it + +&&&&&B/B-B-B-B-BRBuBlBeBsB-B-B-B-B-B/B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B\ +&&&&&B|GbGoGoGtGsB B B B B B B B w B|G<GrGuGlGeB BnBaBmBew=w"ybyoyoytysw"B BtByBpBew=w"ydyeysytyryoyyw"G>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|w?w wdwawrwkwnwewswsB B B w B|G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wswwwowrwdwsB B B B B B B w B|G G G G G G G G G<GtGvGaGlG>wTwVw_wBwOwOwTwSg<g/gtgvgaglg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wswawlwtw wwwawtwewrB B B w B|G G G G G G G G G<GoGrG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|wfwowowdB B B B B B B B B w B|G G G G G G G G G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GlGeGvGeGlB BmBiBnw=w"y0w"B BmBaBxw=w"y5y0w"G>g<g/glgegvgeglg>B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GoGrG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G G G G G<GsGtGaGtGuGsG>wvwewrwyw wbwawdg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G G G G G<GsGtGaGtGuGsG>wbwawdg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g g g g g g g g g g g g g<g/gogrg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g g g g g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GlGeGvGeGlB BmBiBnw=w"y2y0w"B BmBaBxw=w"y5y0w"G>g<g/glgegvgeglg>B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GsGtGaGtGuGsG>wawvwewrwawgweg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g g g g g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GlGeGvGeGlB BmBiBnw=w"y3y5w"B BmBaBxw=w"y5y0w"G>g<g/glgegvgeglg>B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GsGtGaGtGuGsG>wgwowowdg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g g g g g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G<GaGnGdG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GlGeGvGeGlB BmBiBnw=w"y4y5w"B BmBaBxw=w"y5y0w"G>g<g/glgegvgeglg>B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GsGtGaGtGuGsG>wvwewrwyw wgwowowdg<g/gsgtgagtgugsg>B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GsGtGaGtGeG>wiwdwewnwtwiwfwiwewdg<g/gsgtgagtgeg>B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G<GnGoGtG>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|G G G G G G G G G G G G G G G G G G G G G<GcGoGnGtGaGiGnG>wswpwewewdg<g/gcgogngtgagigng>B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g g g g g g g g g g g g g<g/gngogtg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g g g g g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g g g g g<g/gogrg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g g g g g<g/gagngdg>B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B w B| +&&&&&B|B B B B B B B B B B B B B w B|g<g/grguglgeg>w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w B| +&&&&&B|B B B B B B B B B B B B B w B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/ +&&&&&B|B B B B B B B B B B B B B w B|w BuBpW/BdBoBwBnW WtWoW WsWcWrWoWlWlW,W BtBaBbW WtWoW WsWwWiWtWcWhW WtWoW WtWhWeW WrWuWlWeW WwWiWnWdWoWww w w w w w w w w w w w w +&&&&&B|w w w w w w w w w w w w w w B|w BuW/BdW WtWoW WmWoWvWeW WrWuWlWeWsW,W BnWeWwW WrWuWlWeW,W BrWeWnWaWmWeW WrWuWlWeW,W BsWaWvWeW WrWuWlWeWsw w w w w w w w w w w w +&&&&&B\B-B-B-B-B-B-B-B-B-B-B-B-B-B-B/w RkW WtWoW rdrirsrarbrlreW WtWhWeW WaWuWtWoWmWaWtWiWzWeWrw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w + +The majority of this is fairly similar to the swords rule; it destroys {average} +boots at character level 20, {good} ones at character level 35 and cursed ones +always. The addition is at the bottom. It adds clauses which will destroy +excellent items providing that they have been identified and that the name does +not contain the word "speed". The <state>identified</state> bit is important +here, as it would destroy the boots on pseudo-id otherwise, before it even saw +the full name of the boots. + +#####GThis is fantastic! Where can I get more help? +email me: fearoffours@t-o-m-e.net diff --git a/lib/mods/theme/help/birth.txt b/lib/mods/theme/help/birth.txt new file mode 100644 index 00000000..9e7da8dd --- /dev/null +++ b/lib/mods/theme/help/birth.txt @@ -0,0 +1,659 @@ +|||||oy +~~~~~84|Birth +~~~~~11|Character +#####R /----------------------------------------\ +#####R < Creating a Character > +#####R \----------------------------------------/ + + *****birth.txt*01[Creating a Character] *****birth.txt*02[Character Characteristics] + *****birth.txt*03[Races] *****birth.txt*04[Race Modifiers] + *****birth.txt*05[Classes] *****birth.txt*83[Gods] + *****birth.txt*06[Stats] *****birth.txt*07[Abilities] + *****birth.txt*08[Combinations of Race and Class] *****birth.txt*09[Stat bonus tables] + +~~~~~01|Character|Creating a Character +~~~~~12|Creating a Character +#####R=== Creating a Character === + +ToME is a roleplaying game, in which you, the player, control a +character in the various dungeons and places of Arda. Perhaps the most +important thing you control is the birth of your character, in which you +choose or allow to be chosen various attributes that will affect the future +life of your character. + +Character creation, or birth, is controlled through a variety of choices +as to constraints on the type of character you wish to play, followed by +a series of random calculations to generate ("roll up") a random character +matching the appropriate constraints. + +Once your character has been generated, you will be given the choice to +generate a new character obeying the same constraints, and once you have +generated more than one character, you can switch back and forth between +the two most recent characters, until you are presented with a personality +that you feel comfortable with. + +You may start the entire process over at any time. + +Once you have accepted a character you will asked to provide a name for the +character. In general, the actual choice of a name is not important, but do +keep in mind that it may have some effect on the game itself. For example, +on some machines, the character name determines the filename that will be +used to save the character to disk. On others, the character name specifies +special "pref" files. And the character name is used on the high score list. + +~~~~~02|Character|Characteristics +~~~~~13|Character|Stats 1 +~~~~~14|Stats|Display +~~~~~37|Display +~~~~~82|Stats +#####R=== Character Characteristics === + +Each character has four primary attributes -- gender, race, race modifier and +class -- that are chosen before the character is generated, and all but gender +stay fixed for the entire life of that character. These attributes have many +effects, which will be mentioned as they come up. Keep in mind that in the +current version of ToME, your choice of race may restrict your choice +of class. + +Each character has a few secondary attributes -- height, weight, social class, +and background history -- which are randomly determined, but which are affected +by the gender and race of the character. In general, these attributes are only +used to provide "flavor" to the character, to assist in the role playing, but +they do have a few minor effects on the game. For example, background history +affects social class, which affects the amount of money the character will +start with. + +Each character also has six primary "stats": strength (STR), intelligence +(INT), wisdom (WIS), dexterity (DEX), constitution (CON), and charisma(CHR). +These stats will increase automatically every 5 levels, until the limit for +each statistic has been reached or until you reach level 50 (whichever +comes first.) Note that this automatic gain is given to +a character only once, so if you restart a character from an old savefile, +he will be considered a descendant of the original character and will not start +gaining stats every 5 levels until he reaches the point where the original +character died. + +By default, primary statistics are represented in a linear way rather than a +percentile way. You can change to percentile via the game option sequence '=', +'5' (ToME options), arrow down to 'stats are represented in a linear way', and +type 'n' for no. Don't forget to save your options when you are done. + +These stats modify the abilities of the character in a variety of ways. Every +stat has a numerical value, ranging from a minimum of 3, up to a normal maximum +of 18, and even higher, into the "percentile" range, represented as "18/01" +through "18/100". Actually, every stat can be raised even above 18/100 by +magical means, up to a pure maximum of 18/220, which is represented as +"18/***". Traditionally, a percentile stat such as "18/50" has been though of +as representing a value part way between 18 and 19, and this is one way to +think of them. However, often, the best way to view the "bonus" values after +the "18/" is as "tenth" points, since it often takes the same magic to raise a +stat from, say, 4 to 5, or 16 to 17, as it does from, say, 18/40 to 18/50. The +important thing to remember is that almost all internal calculations "ignore" +the final digit of any "bonus", so that, for example, "18/40" and "18/49" +generally have the same effects. During character generation, each stat is +rolled out as a number from 8 to 17, with a normal (bell-curve) distribution, +and is then immediately modified based on the race and class of the character. + +Each character also has several primary "skills" -- disarming, magic devices, +saving throws, stealth, searching ability, searching frequency, fighting skill, +and shooting skill -- which are derived from the character's race, class, level, +stats, and current equipment. These skills have rather obvious effects, but +will be described more completely below. + +Each character may have one or more "intrinsic racial skills", based on +the race of the character. These may include special resistances, abilities +such as infravision, or even activatable powers such as food creation. +~~~~~16|Gold +~~~~~81|Abbreviations +~~~~~17|Abbreviations|AU +~~~~~18|Money +Money in ToME is referred to in gold pieces, also frequently abbreviated as AU +(the chemical symbol for gold). + +Each character starts with some gold, which can be used to buy items from the +shops in town. Additionally, gold can be obtained by several means: + + * selling items you have, or find, to the shops + * taking it from dead monsters + * finding it lying around on the floor in the dungeon + * digging it out of the walls in certain dungeons + +Each character starts out with some gold. The amount you start with is based on +social class (higher is better), charisma (higher is better), and some other +stats (less powerful characters start with more gold). +~~~~~85|Inventory - starting info +Inventory is what you are carrying and/or wearing at the moment. All items you +carry/wear have a certain weight. If the weight is very heavy for your +strength, it can slow you down, and that is not a good thing for your +character's continuing health. When your character is first created, all items +you are granted upon creation will be in your inventory. Sometimes starting +inventory includes something other than a weapon or armor (for example, a light +source, scroll, potion, or food.) +~~~~~86|Weapons - starting info +Some characters start with a weapon. If yours does, you will need to 'w'ield it +in order to gain its attack capabilities. +~~~~~23|Character|Armor Class +~~~~~19|Armor|Armor Class +~~~~~20|Abbreviations|AC +#####R === Armour Class === +Each character has an armor class, representing how well the character can +avoid damage. The armor class is affected by dexterity, the equipment, and +sometimes the race. The higher the AC, the better. + +The numbers following a piece of armor's name indicate how good it is. A Metal +Cap [3,+0] is not as good as an Iron Helm [5,+0], AC-wise, since the 5 is a +bigger number than the 3. On the other hand, an Iron Helm is heavier than a +Metal Cap, and that may make a difference to you. + +The plusses following the first number (e.g. the +0) indicate a magical bonus. +If the plus number is more than zero, it should be added on to the base +number. E.g. a Metal Cap [3,+3] has a higher AC than an Iron Helm [5,+0]. + +Some characters start with armor. If yours does, you need will need to 'w'ield +it in order to gain its protection. +~~~~~21|Abbreviations|HP +~~~~~22|Character|Hit Points +Each character has hit points (HP), representing how much damage the character +can sustain before death. Hit points are derived from your race, class, +level, and constitution, and can be temporarily boosted by magical means. +Hit points may be regained by resting, or by a variety of magical means. +~~~~~24|Abbreviations|SN +~~~~~25|Character|Sanity Points +Each character has sanity points (SN), representing how much mental damage the +character can sustain before death. Sanity points are derived from your wisdom +and character level. Sanity points may only be regained by magical means and +won't be regained by resting. +~~~~~26|Abbreviations|SP +~~~~~27|Magic|Mana +~~~~~28|Character|Mana +Each character has a certain amount of mana. The amount of mana represents how +many spells of a certain difficulty a character can cast. When a spell is +cast, you lose amount of mana corresponding to the 'cost' of the spell. + +When all mana is gone, or the cost of a given spell is greater than the amount +of mana you have left, you may attempt to cast a spell; beware, as there are +consequences to such a rash act. + +Spell points may be regained by resting. They can also be restored by a few +magical means. + +Your spell points are derived from your Magic skill, player level and the +greatest of INT and WIS. + +Your total spell points are additionally affected by: + + * your character's race modifier + * character class + +Your total spell points may be affected by: + + * your encumbrance + * what you wear + +~~~~~29|Abbreviations|Pt +~~~~~30|Gods|Piety +~~~~~31|Character|Piety +Finally, characters that have chosen to follow a *****gods.txt*0[God] will have piety points +(Pt). These points represent the character's standing with their God, a +standing which may rise or fall over time. A character may spend piety points +to cast a spell granted by his/her God. Spent piety points can be regained in +different fashions, depending on which God is involved -- each is pleased or +displeased by assorted actions. Pleasing your God gains you piety, while +displeasing your god will lose you piety. + +In addition to forming the basis for God-granted spells, accumulated piety +points may also confer various benefits or penalties upon your character, +depending on the God involved. For example, followers of Eru who have +accmulated lots of piety points gain a WIS bonus. The actual rules are +quite specific to each God. +~~~~~03|Races +#####R=== Races === + +There are lots different races that you can choose from in ToME. Some +races are restricted as to what profession they may be, and each race has +its own adjustments to a character's stats and abilities. Most races also +have intrinsic abilities, which can be accessed via the "U" command (original +keyset, or "O" in the roguelike keyset). + + *****r_beorn.txt*0[Beorning] *****r_hafelf.txt*0[Half-Elf] *****r_orc.txt*0[Orc] + *****r_drkelf.txt*0[Dark Elf] *****r_hafogr.txt*0[Half-Ogre] *****r_pettyd.txt*0[Petty-Dwarf] + *****r_dragon.txt*0[Dragon] *****r_hielf.txt*0[High-Elf] *****r_rohank.txt*0[Rohan Knight] + *****r_dunad.txt*0[Dunadan] *****r_hobbit.txt*0[Hobbit] *****r_eagle.txt*0[Eagle] + *****r_dwarf.txt*0[Dwarf] *****r_human.txt*0[Human] *****r_troll.txt*0[Troll] + *****r_elf.txt*0[Elf] *****r_druadan.txt*0[Druadan] *****r_wodelf.txt*0[Wood Elf] + *****r_ent.txt*0[Ent] *****r_maia.txt*0[Maia] *****r_yeek.txt*0[Yeek] + *****r_gnome.txt*0[Gnome] *****r_demon.txt*0[Demon] +~~~~~04|Race Modifiers +#####R=== Race Modifiers === +There are many different race modifiers from which you can choose in ToME. +Some are restricted as to what race they can be used with, and each one has +its own adjustments to a character's stats and abilities. Most also have +intrinsic abilities. If you are not asked for a race modifier, it is because +your race only supports the classical form. + + *****rm_class.txt*0[Classical] *****rm_barb.txt*0[Barbarian] + *****rm_herm.txt*0[Hermit] *****rm_lsoul.txt*0[Lost Soul] + *****rm_skel.txt*0[Skeleton] *****rm_spec.txt*0[Spectre] + *****rm_zomb.txt*0[Zombie] *****rm_vamp.txt*0[Vampire] + +Dragon subraces: + + *****rm_red.txt*0[Red] *****rm_blue.txt*0[Blue] + *****rm_black.txt*0[Black] *****rm_white.txt*0[White] + *****rm_green.txt*0[Green] *****rm_ether.txt*0[Ethereal] + +Demon subraces: + + *****rm_narrog.txt*0[Narrog] *****rm_drarog.txt*0[Draugrog] + *****rm_aewrog.txt*0[Aewrog] *****rm_lygrog.txt*0[Lygrog] + *****rm_hurog.txt*0[Hurog] *****rm_limrog.txt*0[Limrog] + *****rm_sarnrog.txt*0[Sarnrog] *****rm_rawrog.txt*0[Rawrog] + *****rm_cabrog.txt*0[Caborrog] *****rm_adanrog.txt*0[Adanrog] + +~~~~~05|Classes +#####R=== Classes === + +Once a race has been chosen, you will need to pick a class. Some classes will +not be available to certain races, for instance, a Troll cannot become a +Paladin. For the first few adventures it is suggested that you run a warrior +or rogue. Spell casting generally requires a more experienced player that is +familiar with survival techniques. + + *****c_archer.txt*0[Archer] *****c_mimic.txt*0[Mimic] *****c_rogue.txt*0[Rogue] + *****c_ascet.txt*0[Ascetic] *****c_mindcr.txt*0[Mindcrafter] *****c_runecr.txt*0[Runecrafter] + *****c_assass.txt*0[Assassin] *****c_monk.txt*0[Monk] *****c_sorcer.txt*0[Sorceror] + *****c_axemas.txt*0[Axemaster] *****c_necro.txt*0[Necromancer] *****c_stonewr.txt*0[Stonewright] + *****c_bard.txt*0[Bard] *****c_palad.txt*0[Paladin] *****c_swordm.txt*0[Swordmaster] + *****c_clairv.txt*0[Clairvoyant] *****c_peacemag.txt*0[Peace-mage] *****c_symbia.txt*0[Symbiant] + *****c_pr_drk.txt*0[Dark-Priest] *****c_polear.txt*0[Polearmmaster] *****c_thaum.txt*0[Thaumaturgist] + *****c_demono.txt*0[Demonologist] *****c_posses.txt*0[Possessor] *****c_trapper.txt*0[Trapper] + *****c_druid.txt*0[Druid] *****c_pr_eru.txt*0[Priest(Eru)] *****c_unbel.txt*0[Unbeliever] + *****c_geoman.txt*0[Geomancer] *****c_pr_mand.txt*0[Priest(Mandos)] *****c_wainrid.txt*0[Wainrider] + *****c_hafted.txt*0[Haftedmaster] *****c_pr_man.txt*0[Priest(Manwe)] *****c_warper.txt*0[Warper] + *****c_lorema.txt*0[Loremaster] *****c_pr_ulmo.txt*0[Priest(Ulmo)] *****c_warmage.txt*0[War-mage] + *****c_mage.txt*0[Mage] *****c_pr_varda.txt*0[Priest(Varda)] *****c_warrio.txt*0[Warrior] + *****c_mercen.txt*0[Mercenary] *****c_ranger.txt*0[Ranger] + +#####R=== Gods === + +Once a class has been chosen you may be given the option to choose a god. Some +classes (notably most Priests) will be given a God to worship automatically. +Some classes are not necessarily suited to following a God, and Gods are not +recommended for new players. You can also choose your mind about who (if +anyone) to worship during the game by finding an *****tome_faq.txt*04[altar] of that God. + +Read *****gods.txt*0[gods.txt] for a little more information about Gods. + + *****g_eru.txt*0[Eru Iluvatar] *****g_tulkas.txt*0[Tulkas] + *****g_manwe.txt*0[Manwe Sulimo] *****g_aule.txt*0[Aule] + *****g_varda.txt*0[Varda Elentari] *****g_ulmo.txt*0[Ulmo] + *****g_yavann.txt*0[Yavanna Kementari] *****g_mandos.txt*0[Mandos] + *****g_melkor.txt*0[Melkor Bauglir] + +~~~~~39|Character|Stats 2 +~~~~~06|Stats|Individual explanations +#####R=== Stats === +~~~~~32|Stats|Strength +~~~~~34|Strength +#####G Strength (STR) + Strength is important in fighting with weapons and in melee + combat. A high strength can improve your chances of hitting + as well as the amount of damage done with each hit. Char- + acters with low strengths may receive penalties. Strength + is also useful in tunnelling and in carrying heavy items. +~~~~~33|Stats|Intelligence +~~~~~35|Intelligence +#####G Intelligence (INT) + Intelligence affects the spellcasting abilities of mage-like + spell schools (whether these spells are learned directly through + their associated skills, or indirectly through the Prayer + skill), as well as some of the special abilities of various + classes (e.g. Symbiants). Intelligence will affect the number + of spell points you receive. A high intelligence may also + improve your chances of successfully casting a spell. You cannot + learn spells if your intelligence is 7 or lower. A good + intelligence can also help with using magic devices, picking + locks, and disarming traps. +~~~~~36|Stats|Wisdom +~~~~~38|Wisdom +#####G Wisdom (WIS) + The primary function of wisdom is to determine the ability + of a priest or paladin to use prayers (God-granted spells), just + like intelligence affects mage spells. Again, high wisdom will + increase the number of spell points you have (even though + prayers use piety points), and will improve the chance that a + prayer will be successful. A good wisdom can also help to + improve your chances of resisting magical spells cast + upon you by monsters. +~~~~~40|Stats|Dexterity +~~~~~41|Dexterity +#####G Dexterity (DEX) + Dexterity is a combination of agility and quickness. A high + dexterity may allow your character to get multiple blows with + lighter weapons, thus greatly increasing your kill power, and + will increase your chances of hitting with any weapon and + dodging blows from enemies. Dexterity is also useful in + picking locks, disarming traps, and protecting yourself from + some of the thieves that inhabit the dungeons. The unscrupulous + adventurer may also find dexterity effective in obtaining items + from stores without rendering payment. +~~~~~42|Stats|Constitution +~~~~~43|Constitution +#####G Constitution (CON) + Constitution is a character's ability to resist damage to his + body, and to recover from damage received. Therefore a + character with a high constitution will receive more hit + points and also recover them faster while resting. +~~~~~44|Stats|Charisma +~~~~~45|Charisma +#####G Charisma (CHR) + Charisma represents a character's personality and physical + appearance. A character with a high charisma will receive + better prices from store owners, whereas a character with a + very low charisma may be robbed blind. A high charisma will + also mean more starting money for the character. +~~~~~07 +~~~~~46|Character|Abilities +#####R=== Abilities === + + Characters possess some different abilities which can help them + to survive. The starting abilities of a character are based upon + race and class. Abilities may be adjusted by high or low stats, + and increase with the corresponding *****skills.txt*0[skill] level. +~~~~~48|Attacking monsters|Fighting ability +#####G Fighting + Fighting is the ability to hit and do damage with weapons or + fists. Normally a character gets a single blow from any + weapon, but if his dexterity and strength are high enough, + he may receive more blows per round with lighter weapons. + Strength and dexterity both modify the ability to hit an + opponent. This skill increases with the *****skills.txt*02[Weaponmastery] skill + and its sub-skills. +~~~~~50|Attacking monsters|Shooting +#####G Shooting Ability (Bows/Throw) + Using ranged missile weapons (and throwing objects) is + included in this skill. Different stats apply to different + weapons, but this ability may modify the distance an object + is thrown/fired, the amount of damage done, and the ability + to hit a creature. This skill increases with the *****skills.txt*08[Archery] skill + and its sub-skills. +~~~~~52|Saving throw +#####G Saving Throw + A Saving Throw is the ability of a character to resist the + effects of a spell cast on him by another person/creature. + This does not include spells cast on the player by his own + stupidity, such as quaffing a nasty potion. This ability + increases with the *****skills.txt*38[Spirituality] skill, + A high wisdom also increases this ability. +~~~~~54|Stealth +#####G Stealth + The ability to move silently about is very useful. Charac- + ters with good stealth can usually surprise their opponents, + gaining the first blow. Also, creatures may fail to notice + a stealthy character entirely, allowing a player to avoid + certain fights. This skill is based upon race, class and the + *****skills.txt*15[Stealth] skill. +~~~~~56|Disarming traps +#####G Disarming + Disarming is the ability to remove traps (safely), and + includes picking locks on traps and doors. A successful + disarming will gain the character some experience. A trap + must be found before it can be disarmed. Dexterity and + intelligence both modify the ability to disarm, and this + ability increases with the *****skills.txt*16[Disarming] skill. +~~~~~58|Magical Devices +#####G Magic Device + Using a magical device such as a wand or staff requires + experience and knowledge. Spell users such as magi and + priests are therefore much better at using a magical device + than say a warrior. This skill is modified by intelligence, + and increases with the *****skills.txt*54[Magic-Device] skill. +~~~~~60|Searching +~~~~~61|Searching|Searching Frequency - Perception +~~~~~62|Perception +#####G Searching Frequency (Perception) + Perception is the ability to notice something without + actively seeking it out. This skill is based upon race, + class and the *****skills.txt*14[Sneakiness] skill. +~~~~~63|Searching|Searching Ability +#####G Searching Ability (Searching) + To search is to actively look for secret doors, floor traps, + and traps on chests. Rogues are the best at searching, but + magi, rangers, and priests are also good at it. This skill + is based upon race, class and the *****skills.txt*14[Sneakiness] skill. +~~~~~66|Infra-vision +#####G Infra-vision + Infra-vision is the ability to see heat sources. Since most + of the dungeon is cool or cold, infra-vision will not allow + the player to see walls and objects. Infra-vision will allow + a character to see any warm-blooded creatures up to a cer- + tain distance. This ability works equally well with or with + out a light source. The majority of ToME's creatures are + cold-blooded, and will not be detected unless lit up by a + light source. Most non-human races have innate infra-vision + ability. Humans can gain infra-vision only through magic + enhancement. + +~~~~~08|Character|Race and Class Combinations +~~~~~67|Races|Combinations with class +~~~~~68|Classes|Combinations with Race +~~~~~69|Tables +~~~~~70|Tables|Combinations of Race and Class +#####R=== Combinations of Race and Class === + +These are the classes that are recommended for different races. You can +still select a race that is not in the chart, but these combinations are +either rather poor (like a zombie mage), a concept so silly that they +are not recommended, or an incredibly unfair combination of race and class. +If you pick a combination that is not on the chart, don't complain if things +don't turn out as you expected them to. + +#####B Warrior Archer Rogue Mage Priest Loremaster +#####B +Beorning Yes No Yes No No Yes +Dark Elf Yes Yes Yes Yes Yes No +Dragon No No No Yes Yes Yes +Dunadan Yes Yes Yes Yes Yes Yes +Dwarf Yes No No No Yes No +Elf Yes Yes No Yes Yes Yes +Ent Yes No No No Yes Yes +Gnome Yes No Yes Yes No No +Half-Elf Yes Yes Yes Yes Yes Yes +Half-Ogre Yes No No No Yes No +High-Elf Yes Yes No Yes Yes Yes +Hobbit Yes Yes Yes Yes No Yes +Human Yes Yes Yes Yes Yes Yes +Druadan Yes Yes Yes No No Yes +Maia Yes Yes Yes Yes Yes Yes +Orc Yes Yes Yes No Yes No +Petty Dwarf Yes No Yes No No No +RohanKnight Yes No No No Yes No +Eagle No No No Yes Yes Yes +Troll Yes No No No No No +Wood Elf Yes Yes No Yes Yes Yes +Yeek Yes Yes Yes Yes Yes Yes +Easterling Yes Yes No No No No +Demon Yes Yes Yes Yes Yes Yes + +~~~~~09|Character|Stat Bonus Table +~~~~~71|Stats|Bonus table +~~~~~72|Tables|Stat bonuses +#####R=== Stat Bonus Tables === + +Stat, hit dice, and experience points per level modifications due to race +are listed in the following table. +~~~~~75|Races|Stat Bonuses +#####GRaces: +#####B STR INT WIS DEX CON CHR Hit Dice Rqd Exp/level + Beorning +4 -2 -2 -1 +3 -5 12 +50% + Dark Elf -1 +3 +2 +2 -2 +1 9 +50% + Dragon +3 +2 +2 -2 +2 -5 9 +150% + Dunadan +1 +2 +2 +2 +3 +2 10 +80% + Dwarf +2 -2 +2 -2 +2 -3 11 +25% + Elf -1 +2 +2 +1 -2 +2 8 +20% + Ent +10 -3 +2 -5 +11 -3 14 +110% + Gnome -1 +2 0 +2 +1 -2 8 +35% + Half-Elf 0 +1 +1 +1 -1 +1 9 +10% + Half-Ogre +3 -1 -1 -1 +3 -3 12 +30% + High-Elf +1 +3 +2 +3 +1 +5 10 +100% + Hobbit -2 +2 +1 +3 +2 +1 7 +10% + Human 0 0 0 0 0 0 10 +0% + Druadan -2 -3 +2 +3 +2 -2 9 +15% + Maia 0 0 0 0 0 0 10 +0% + Petty Dwarf +1 -1 +2 0 +2 -4 11 +35% + Orc +2 -1 0 +1 +1 -4 10 +10% + RohanKnight +4 -2 +3 +1 +4 +2 10 +120% + Eagle +6 +2 +1 -2 +3 +6 12 +200% + Troll +4 -4 -2 -4 +3 -6 12 +37% + Wood Elf +2 +2 -3 +5 0 +1 7 +30% + Yeek -5 -5 -5 -5 -5 -5 6 -75% + Easterling +2 -2 -2 -2 +2 -1 10 +40% + Demon 0 0 0 0 0 -1 10 +70% +~~~~~76|Race Modifiers|Stat Bonuses +#####GRace Modifiers: +#####B STR INT WIS DEX CON CHR Hit Dice Rqd Exp/level + Classical 0 0 0 0 0 0 +0 +0% + Barbarian +2 -3 -2 +1 +1 -3 +1 +25% + Hermit -3 +1 +1 -3 -3 +1 -3 +20% + Lost Soul 0 0 0 0 0 0 +0 +0% + Skeleton 0 -2 -2 0 +1 -4 +0 +45% + Spectre -5 +1 +1 +2 -3 -6 -4 +80% + Vampire +3 +2 -3 -2 +1 -4 +1 +100% + Zombie +2 -6 -6 +1 +4 -5 +3 +45% + + +#####R Dragons: + Red +3 0 0 0 0 0 +0 +0% + Black 0 0 0 0 0 +3 +0 +0% + Green 0 0 0 0 +3 0 +0 +0% + Blue 0 0 0 +3 0 0 +0 +0% + White 0 +3 0 0 0 0 +0 +0% + Ethereal 0 0 +3 0 0 0 +0 +0% + +#####R Demons: + (Narrog) -1 +1 +1 +1 -1 -2 +1 +20% + (Aewrog) -2 0 0 0 +3 0 +1 +0% + (Hurog) 0 0 0 0 0 -1 +0 -10% + (Sarnrog) +2 -1 -2 -2 +2 -1 +2 +20% + (Caborrog) -1 +2 +1 0 0 -3 +2 +10% + (Draugrog) +1 +1 +1 +1 +1 -1 +0 -20% + (Lygrog) -3 +5 +5 +5 -1 -6 +2 +40% + (Limrog) -2 +1 +1 +3 -1 -1 +1 +50% + (Rawrog) +2 +1 +1 -1 +2 +1 +2 +30% + (Adanrog) +1 +1 +1 +1 +1 +1 +3 +50% + +~~~~~77|Classes|Stat Bonuses +#####GClasses: +#####B STR INT WIS DEX CON CHR + Axemaster +5 -2 -2 +2 +2 -1 + Demonologist +5 -2 -2 +2 +2 -1 + Haftedmaster +5 -2 -2 +2 +2 -1 + Polearmmaster +5 -2 -2 +2 +2 -1 + Swordmaster +5 -2 -2 +2 +2 -1 + Unbeliever +5 -2 -2 +2 +2 -1 + Warrior +5 -2 -2 +2 +2 -1 + Wainrider +5 -2 -2 +2 +2 -1 + + Clairvoyant -5 +3 0 +1 -2 +1 + Geomancer -5 +3 0 +1 -2 +1 + Mage -5 +3 0 +1 -2 +1 + Necromancer -5 +3 0 +1 -2 +1 + Runecrafter -5 +3 0 +1 -2 +1 + Sorceror -5 +3 0 +1 -2 +1 + Thaumaturgist -5 +3 0 +1 -2 +1 + Warper -5 +3 0 +1 -2 +1 + + Archer +2 +1 0 +2 +1 +1 + Ranger +2 +2 0 +2 +1 +1 + Sniper +2 +2 0 +2 +1 +1 + + Assassin +2 +1 -2 +3 +1 -1 + Rogue +2 +1 -2 +3 +1 -1 + Mercenary +2 +1 -2 +3 +1 -1 + + Ascetic +1 -2 +1 +1 0 +1 + Bard +1 -2 +1 +1 0 +1 + Loremaster +1 -2 +1 +1 0 +1 + Mimic +1 -2 +1 +1 0 +1 + Monk +1 -2 +1 +1 0 +1 + Possessor +1 -2 +1 +1 0 +1 + Summoner +1 -2 +1 +1 0 +1 + Symbiant +1 -2 +1 +1 0 +1 + + Dark-Priest -1 -3 +3 -1 0 +2 + Druid -1 -3 +3 -1 0 +2 + Mindcrafter -1 -3 +3 -1 0 +2 + Paladin -1 -3 +3 -1 0 +2 + Priest(Eru) -1 -3 +3 -1 0 +2 + Priest(Mandos)-1 -3 +3 -1 0 +2 + Priest(Manwe) -1 -3 +3 -1 0 +2 + Priest(Ulmo) -1 -3 +3 -1 0 +2 + Priest(Varda) -1 -3 +3 -1 0 +2 + Stonewright -1 -3 +3 -1 0 +2 + + Trapper 0 +2 +2 +2 0 +4 + Peace-mage 0 +2 +2 +2 0 +4 + + +~~~~~10|Character|Ability tables +~~~~~74|Tables|Ability Tables +#####R=== Ability Tables === + +~~~~~78|Races|Ability table +#####GRaces: +#####B Dsrm Dvce Save Stlh Srch Prcp HtH Misl Infra + Beorning -6 -8 -6 -2 -1 +5 +25 +5 30 feet + Dark Elf +5 +15 +20 +3 +8 +12 -5 +10 50 feet + Dragon +5 +5 +5 -10 +5 +5 +5 -20 50 feet + Dunadan +4 +5 +5 +2 +3 +13 +15 +10 None + Dwarf +2 +9 +10 -1 +7 +10 +15 +0 50 feet + Elf +5 +6 +6 +2 +8 +12 -5 +15 30 feet + Ent +5 +5 +20 -6 +5 +4 +15 +5 50 feet + Gnome +10 +12 +12 +3 +6 +13 -8 +12 40 feet + Half-Elf +2 +3 +3 +1 +6 +11 -1 +5 20 feet + Half-Ogre -3 -5 -5 -2 -1 +5 +20 +0 30 feet + High-Elf +4 +20 +20 +4 +3 +14 +10 +25 40 feet + Hobbit +15 +18 +18 +5 +12 +15 -10 +20 40 feet + Human +0 +0 +0 +0 +0 +10 +0 +0 None + Druadan +5 +0 +0 +5 +15 +15 +0 +5 30 feet + Maia +0 +0 +0 +0 +0 +10 +0 +0 None + Orc -3 -3 -3 -1 +0 +7 +12 -5 30 feet + Petty Dwarf +3 +5 +10 +1 +5 +10 +9 +0 50 feet + RohanKnight +10 +5 +5 -8 +1 +1 +5 +5 None + Eagle +6 0 +10 -16 +30 +10 + 0 +0 50 feet + Troll -5 -8 -8 -2 -1 +5 +20 -10 30 feet + Wood Elf +5 +6 +6 +5 +8 +12 -5 +40 40 feet + Yeek -5 -5 -10 +0 -5 +0 -10 -10 20 feet + Easterling +0 -5 -1 +0 +0 +10 +5 +5 None + Demon +0 +0 +0 +0 +0 +0 +0 +0 30 feet +~~~~~79|Race Modifiers|Ability table +#####GRace Modifiers: +#####B Dsrm Dvce Save Stlh Srch Prcp HtH Misl Infra + Classical +0 +0 +0 +0 +0 +0 +0 +0 +0 feet + Barbarian -2 -10 +2 -2 +0 +1 +12 +5 +0 feet + Hermit +5 +10 +5 +3 +4 +10 -5 -5 +10 feet + Lost Soul +0 +0 +0 +0 +0 +0 +0 +0 +0 feet + Skeleton -5 -5 +5 -1 -1 +8 +8 +0 +10 feet + Spectre +2 +8 +7 +2 +2 +7 -5 -2 +30 feet + Vampire +0 +0 +0 +0 +0 +0 +0 +0 +0 feet + Zombie -2 -2 +5 -1 -1 +2 +5 +0 +10 feet + +#####R Dragons: + Red +0 +0 +0 -2 +2 +0 +5 +0 +10 feet + Black +2 +0 +1 +0 +0 +0 +0 +0 +0 feet + Green +0 +0 +2 +0 +0 +0 +0 +0 +0 feet + Blue +3 +0 +2 +1 +0 +0 +0 +0 +10 feet + White +0 +2 +0 +0 +0 +0 +0 +0 +0 feet + Ethereal +0 +0 +1 +5 +2 +2 +0 +0 +30 feet + +#####R Demons: + (Narrog) +2 +0 +1 +2 +2 +20 +0 +0 +10 feet + (Aewrog) +0 +0 +1 -2 +0 +10 +0 +0 +10 feet + (Hurog) +2 +0 +2 +0 +5 +30 +0 +0 +20 feet + (Sarnrog) -1 +0 +0 -8 -2 -10 +5 +0 +0 feet + (Caborrog) +0 +0 +1 -10 +2 +10 +0 +0 +0 feet + (Draugrog) +2 +0 +2 -20 +5 +30 +0 +0 +20 feet + (Lygrog) +5 +5 +5 +10 +5 +50 +0 +0 +30 feet + (Limrog) +2 +2 +2 +2 +2 +30 +0 +0 +20 feet + (Rawrog) +0 +0 +4 -3 +0 +10 +10 +10 +0 feet + (Adanrog) +1 +1 +1 +1 +1 +20 +15 +10 +20 feet
\ No newline at end of file diff --git a/lib/mods/theme/help/c_alchem.txt b/lib/mods/theme/help/c_alchem.txt new file mode 100644 index 00000000..2f7cd58c --- /dev/null +++ b/lib/mods/theme/help/c_alchem.txt @@ -0,0 +1,135 @@ +|||||oy +~~~~~01|Alchemist +~~~~~02|Classes|Alchemist +#####R=== Alchemists === + +#####GDescription +Alchemists are the only class that can harness the abilities of the +essences found in the dungeon. They can add these essences to staves, +rings, wands, rods, and sometimes weapons and armour to create new items +or recharge old ones. They can also extract essences from magical items +they find. Using these abilities, Alchemists can get very good items at +low levels. The trouble is getting them to survive later on. + +Alchemists are extremely proficient with all kinds of magical devices, +and have made a fine art of extracting, storing, and using these +objects' magical energies. Because they neither fight well nor cast +powerful spells, Alchemists rely on their craftsmanship to cope with +the dangers of the dungeons. They will quickly learn to create damage- +dealing wands, rods, and staffs, forge powerful weapons and armour, +make highly useful objects of other kinds, and eventually, at great cost +to other knowledge, they can learn the perilous art of artifact creation +itself. + +#####GStarting Stat Modifiers +Strength -5 +Intelligence +3 +Wisdom +0 +Dexterity +1 +Constitution -2 +Charisma +1 +Hit Die +d0 +Spell Points +0% +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.700] + Weaponmastery 0.700 [0.700] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] +Magic 3.000 [0.900] + Magic-Device 1.000 [1.250] + Geomancy + Fire 0.000 [0.100] + Water 0.000 [0.100] + Air 0.000 [0.100] + Earth 0.000 [0.100] + Meta 0.000 [0.500] + Conveyance 0.000 [0.100] + Divination 0.000 [0.500] + Temporal 0.000 [0.100] + Mind 0.000 [0.100] + Nature 0.000 [0.100] + Necromancy 0.000 [0.100] + Runecraft 0.000 [0.700] + Thaumaturgy 0.000 [0.100] + Alchemy 1.000 [0.800] +Spirituality 1.000 [0.800] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +*An Alchemist cannot learn the Geomancy skill, but it is shown in his skill +screen because the elemental schools are sub-skills of it. + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GStarting Equipment +An Alchemist begins the game with: + a Dagger + six Essences of Explosion + an Empty Bottle + a Set of Leather Gloves +~~~~~03|Alchemist|Alchemy powers explained +~~~~~05|Skills|Alchemy - Alchemy powers +#####GAlchemy +[[[[[BThe alchemical techniques are accessed using the 'm' key.] +Alchemists may then 'E'xtract essences or add 'P'owers. The Alchemist [[[[[vmust] +be wearing GLOVES to use their alchemy powers. + +An Alchemist is also capable of [[[[[Bcreating their own artifacts], but +this is a time-consuming, and costly, activity. To do so, he must first +learn the ability *****ability.txt*09[Artifact Creation], which costs a whopping 70 skill points +to learn, and requires some high pre-requisites. Once he has done so, +he needs to imbue an ego item with a number of essences of magic (equal +to their skill level) and then wield the item. While using the item, +it will gain experience (which reduces the amount of exp the wearer +gains during this time). When the Alchemist feels that the item is +powerful enough, he can finalise the artifact by "buying" powers using +the experience the artifact has collected. He will also require exotic +ingredients to add the abilities. + +Most (but not all) potions, scrolls, wands, staffs, rods, rings, and +amulets contain usable magical energies. An Alchemist taps that +energy, using the technique "'E'xtract essences" to create one or more +essences of a type appropriate to the original object. + +The drained object itself is now called "of nothing". Unlike any +other kind of object, it can have new magics added to it. + +An Alchemist can add power to such items by using essences he made or +found. He does this with the technique "'P'ower". He can then select +the object he wishes to enchant, and the kind of object he wishes to +create. Only object types for which he knows the recipe will be displayed, +and ones for which essences are lacking will be displayed in red. Objects +whose level exceeds his own are sometimes difficult to create, though +he can always add gold to improve the chances of his success. + +[[[[[BA few pointers:] + -Recipes are (usually) logical. Acid essences don't make Dragon + Weapons. And you can always look at the recipes you know with + the "recipe 'B'ook" command. + -Not all objects or ego-item types can be made using alchemy. + -Alchemy is mostly reversible. Most items that you can + 'E'xtract from, you can later re-create, if you learn about + them when extracting from them. You won't always get enough + essences from destroying an item to recreate it, though the + chance of doing so will get higher as you increase in skill. + -*Identifying* an object that you can destroy will always teach + you how to create it (if creating it is possible). + -Since you can't create abilities in artifacts that you aren't + aware of, make sure to *identify* all the artifacts you can. + -You can't *identify* things you buy in shops, so you'll have + to extract from them and take your chances. + +[[[[[BSome Recipes:] +Any Alchemist worth his salt knows lots of recipes. By extracting from +items in the dungeon, he learns to create more and more items. You can +see the recipes you know using the "recipe 'B'ook" command. The Alchemist +starts off knowing some basic recipes, and gains more recipes as time +goes on. + +More details can be found in the *****essences.txt*0[Essences SPOILER]). + diff --git a/lib/mods/theme/help/c_archer.txt b/lib/mods/theme/help/c_archer.txt new file mode 100644 index 00000000..a115e6f2 --- /dev/null +++ b/lib/mods/theme/help/c_archer.txt @@ -0,0 +1,68 @@ +~~~~~01|Archer +~~~~~02|Classes|Archer +#####R=== Archers === + +#####GDescription +Archers are to bows what warriors are to melee. They are the best class +around with any bow/crossbow/sling/boomerang. + +Needing a lot of ammo, they will learn early how to make it from junk found +in the dungeons. They also gain, at skill level 20, the unique ability to make +their arrows/bolts/shots pierce through monsters! + +#####GStarting Stat Modifiers +Strength +2 +Intelligence +1 +Wisdom +0 +Dexterity +2 +Constitution +1 +Charisma +1 +Hit Die +d4 +Spell Points +0% +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.800] + Weaponmastery 1.000 [0.500] + Archery 1.000 [0.850] + Sling-mastery 0.000 [0.500] + Bow-mastery 0.000 [0.500] + Crossbow-mastery 0.000 [0.500] + Boomerang-mastery 0.000 [0.500] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 1.000 [0.900] +Magic 0.000 [0.200] + Magic-Device 1.000 [1.100] +Spirituality 1.000 [0.400] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Ammo creation 2 + +#####GStarting Equipment +An Archer begins the game with: + a Short Bow + a Sling + some ammo +~~~~~03|Creating Ammo +#####GCreating Ammo +Archers automatically gain the *****ability.txt*07[Ammo Creation] ability when they reach character +level 2. (Other classes can purchase this ability when they have enough skill +points.) This ability is accessed via the 'm' command. The first type of +ammo you can make is sling ammo (pebbles or shots); as you increase in skill +you'll be able to make other arrows (bow ammo) or bolts (crossbow ammo). + +Shots (or other sling ammo) are created from rubble piles found in the dungeons +and other places. To make shots, stand next to a rubble pile, activate the +ammo creation ability from the 'm' menu, select 's'hots, then specify the +direction to the rubble pile, which will be consumed during the ammo creation. +Arrows or bolts are made from "junk" items ('~' symbol, such as shards of +pottery) that you can find in the dungeons and other places. To make arrows or +bolts, assuming you have sufficient Archery skill, you must have the junk item +in your inventory or on the ground at your feet. Specify the junk item after +selecting 'a'rrows or 'b'olts from the ammo creation menu, and it will be +consumed and replaced with a stack of ammo. diff --git a/lib/mods/theme/help/c_ascet.txt b/lib/mods/theme/help/c_ascet.txt new file mode 100644 index 00000000..cc2a2ab4 --- /dev/null +++ b/lib/mods/theme/help/c_ascet.txt @@ -0,0 +1,46 @@ +~~~~~01|Ascetic +~~~~~02|Classes|Ascetic +#####R=== Ascetics === + +#####GDescription +An Ascetic is a monk who has forsaken all worldly +things, including deity worship and magic. Ascetics +must survive by their fists and their natural +ability to resist magic. Despite not worshipping any +gods, Ascetics are highly spiritual, and can achieve +excellent saving throws in addition to their magic- +repelling abilities. + +#####GStarting Stat Modifiers +Strength +1 +Intelligence -2 +Wisdom +1 +Dexterity +1 +Constitution +0 +Charisma +1 +Bonus Blows 0 +Hit Die +d8 +Exp Penalty 40% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.900] + Archery 1.000 [0.700] + Barehand-combat 1.000 [0.900] + Antimagic 1.000 [1.000] +Sneakiness 1.000 [0.700] + Stealth 1.000 [1.000] + Disarming 1.000 [0.900] + Dodging 0.000 [1.000] +Spirituality 1.000 [0.700] +Monster-lore 1.000 [1.100] + Corpse-preservation 1.000 [0.700] + +#####GStarting Equipment +An ascetic begins the game with: + a potion of healing + +#####GInnate Abilities: +#####BAbility Character level +Extra Max Blow(1) 1 +Extra Max Blow(1) 5
\ No newline at end of file diff --git a/lib/mods/theme/help/c_assass.txt b/lib/mods/theme/help/c_assass.txt new file mode 100644 index 00000000..4269e3e8 --- /dev/null +++ b/lib/mods/theme/help/c_assass.txt @@ -0,0 +1,58 @@ +~~~~~01|Assassin +~~~~~02|Classes|Assassin +#####R=== Assassins === +#####GDescription +Assassins are similar to Rogues, but have trained their combat abilities more +extensively by neglecting the study of magic. They also tend to be more stealthy +and careful in their dungeon exploration, but aren't so good at stealing, +trapping and disarming as their more "peaceful" counterparts. + +Assassins have access to the schools of *****m_convey.txt*0[Conveyance], *****m_divin.txt*0[Divination] and *****m_tempo.txt*0[Temporal] magic. + +#####GStarting Stat Modifiers +Strength +2 +Intelligence +1 +Wisdom -2 +Dexterity +3 +Constitution +1 +Charisma -1 +Hit Die +d6 +Spell Points +0% +Exp Penalty 25% + +#####GStarting Skills +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.800] + Weaponmastery 1.000 [0.800] + Sword-mastery 1.000 [0.600] + Critical-hits 2.000 [0.800] + Archery + Boomerang-mastery 1.000 [0.300] +Sneakiness 1.000 [2.000] + Stealth 1.000 [2.000] + Disarming 1.000 [1.000] + Backstab 1.000 [2.000] + Stealing 1.000 [0.200] + Dodging 1.000 [2.000] +Magic 1.000 [0.200] + Magic-Device 1.000 [0.750] + Conveyance 0.000 [0.100] + Divination 0.000 [0.100] + Temporal 0.000 [0.200] +Spirituality 1.000 [0.700] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +*An Assassin cannot learn the Archery skill, but it is shown in his skill +screen because Boomerang-mastery is a sub-skill of it. + +#####GInnate Abilities: +#####BAbility Character level +Extra Max Blow(1) 10 + +#####GStarting Equipment +An Assassin begins the game with: + a Dagger + + + diff --git a/lib/mods/theme/help/c_axemas.txt b/lib/mods/theme/help/c_axemas.txt new file mode 100644 index 00000000..cdd6ba88 --- /dev/null +++ b/lib/mods/theme/help/c_axemas.txt @@ -0,0 +1,51 @@ +~~~~~01|Axemaster +~~~~~02|Classes|Axemaster +#####R=== Axemasters === + +#####GDescription +The Axemaster is a Warrior who specialises in axes. +The training is so intense and specific that Axemasters gain huge bonuses +when fighting with their chosen weapon, dependent on their Axe-mastery skill. +In most other respects they perform about as well as a generic Warrior. + +#####GStarting Stat Modifiers +Strength +5 +Intelligence -2 +Wisdom -2 +Dexterity +2 +Constitution +2 +Charisma -1 +Hit Die +d9 +Spell Points +0% +Exp Penalty 0% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.900] + Weaponmastery 1.000 [0.950] + Sword-mastery 0.000 [0.300] + Axe-mastery 1.000 [0.700] + Hafted-mastery 0.000 [0.300] + Polearm-mastery 0.000 [0.300] + Archery 1.000 [0.600] + Antimagic 0.000 [0.550] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 1.000 [0.900] +Magic 1.000 [0.300] + Magic-Device 1.000 [1.150] +Spirituality 1.000 [0.400] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Extra Max Blow(1) 1 +Extra Max Blow(2) 1 +Spread blows 25 + +#####GStarting Equipment +An Axemaster begins the game with: + a Ring of Fear Resistance + a Chain Mail + a Hatchet diff --git a/lib/mods/theme/help/c_bard.txt b/lib/mods/theme/help/c_bard.txt new file mode 100644 index 00000000..23ba42ca --- /dev/null +++ b/lib/mods/theme/help/c_bard.txt @@ -0,0 +1,69 @@ +|||||oy +~~~~~01|Bard +~~~~~02|Classes|Bard +#####R=== Bards === + +#####GDescription +Bards are traditional musicians. Their magical attacks are sound-based, and +last as long as the Bard has mana. If the Bard runs out of mana, he/she stops +singing. There is also a low-level "spell" that will cease the song. + +While any class can use musical instruments, only Bards can tap the +power of voice to aid themselves and hinder, dismay, and kill their +foes. + +#####GMagic Usage + +Songs are continuous, and the song consumes mana every turn in order to +maintain itself. The song will continue, once played, until either the 'Stop +Singing' song is sung, or the player's mana runs out. + +Each song has a magic school level associated with, just as any other magic +spell does. Each song also has a Roman numeral (e.g. I, II, III, IV, V) +following its name. These numerals correspond to 1, 2, 3, 4, 5. The higher the +numeral, the more music skill the Bard must have to play that song. + +Each musical instrument has a value between 1 and 4 assigned to it, as well. +The higher the number, the better the craftmanship. A Bard can only play +higher level songs with a more powerful instrument. You would be able to cast +"Stop Singing (I)" and "Song of the Sun (I)" with a a Harp (+1). A Harp (+2) +would allow you to sing those songs, as well as "Flow of Life (II)". + +For information on song effects see the *****m_music.txt*0[Music Songs] file. + +#####GStarting Stat Modifiers +Strength +1 +Intelligence -2 +Wisdom +1 +Dexterity +1 +Constitution +0 +Charisma +1 +Hit Die +d8 +Spell Points +0% +Exp Penalty 40% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.700] + Weaponmastery 1.000 [0.700] + Barehand-combat 1.000 [0.600] +Sneakiness 1.000 [0.700] + Stealth 1.000 [0.700] + Disarming 1.000 [0.600] +Magic 1.000 [0.600] + Magic-Device 1.000 [1.000] +Spirituality 1.000 [0.800] + Prayer 0.000 [0.500] + Music 1.000 [0.800] +Monster-lore 1.000 [1.100] + Summoning 0.000 [0.400] + Corpse-preservation 1.000 [0.700] + Symbiosis 0.000 [0.400] + Mimicry 0.000 [0.400] + +#####GStarting Equipment +A Bard begins the game with: + a Harp (+1) + a Short Sword + a Robe + a Potion of Healing diff --git a/lib/mods/theme/help/c_clairv.txt b/lib/mods/theme/help/c_clairv.txt new file mode 100644 index 00000000..7d537486 --- /dev/null +++ b/lib/mods/theme/help/c_clairv.txt @@ -0,0 +1,47 @@ +~~~~~01|Clairvoyant +~~~~~02|Classes|Clairvoyant +#####R=== Clairvoyants === + +#####GDescription +Clairvoyants are masters of the mind, they are +especially proficient at Mindcraft, Divination, +and the Mind school of magic. They sacrifice +breadth of ability for additional favour with +their deity, so it makes sense to pick a deity +to worship when playing a clairvoyant character. +It is not, however, a requirement. + +#####GStarting Stat Modifiers +Strength -5 +Intelligence +3 +Wisdom +0 +Dexterity +1 +Constitution -2 +Charisma +1 +Bonus Blows 0 +Hit Die +d0 +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.300] + Weaponmastery 0.700 [0.500] +Sneakiness 1.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.200] + Spell-power 0.000 [0.600] + Divination 1.000 [1.000] + Mind 1.000 [1.000] +Spirituality 1.000 [1.000] + Prayer 0.000 [1.000] + Mindcraft 1.000 [0.700] +Monster-lore 0.000 [0.500] + +#####GStarting Equipment +A clairvoyant begins the game with: + A book of Beginner Cantrips + A quarterstaff + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1
\ No newline at end of file diff --git a/lib/mods/theme/help/c_demono.txt b/lib/mods/theme/help/c_demono.txt new file mode 100644 index 00000000..98b0bc9b --- /dev/null +++ b/lib/mods/theme/help/c_demono.txt @@ -0,0 +1,54 @@ +|||||oy +~~~~~01|Demonologist +~~~~~02|Classes|Demonologist +#####R=== Demonologists === + +#####GDescription +Masters of the Demons, members of this class can gain tremendous power +over demonkind, either for good or for evil ends. + +Their spells are contained in specific blades, shields and helms (actually +shaped in the form of horns) which when wielded allow the Demonologist to +cast spells unique to her class; each piece of equipment holds 3 spells. + +See the information on the *****m_demono.txt*0[Demonology] school of magic for more details. + +#####GStarting Stat Modifiers +Strength +5 +Intelligence -2 +Wisdom -2 +Dexterity +2 +Constitution +2 +Charisma -1 +Hit Die +d9 +Spell Points +0% +Exp Penalty 0% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.750] + Weaponmastery 1.000 [0.750] + Sword-mastery 0.000 [0.600] + Archery 2.000 [0.400] +Sneakiness 2.000 [1.800] + Stealth 0.000 [0.400] + Disarming 2.000 [1.800] +Magic 2.000 [0.700] + Magic-Device 1.000 [1.150] + Demonology 1.000 [1.000] +Spirituality 2.000 [0.700] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Extra Max Blow(1) 1 +Extra Max Blow(2) 1 +Spread blows 25 + +#####GStarting Equipment +A Demonologist begins the game with: + a Ring of Fear Resistance + a Demonblade + a Chain Mail + diff --git a/lib/mods/theme/help/c_druid.txt b/lib/mods/theme/help/c_druid.txt new file mode 100644 index 00000000..0b0493e2 --- /dev/null +++ b/lib/mods/theme/help/c_druid.txt @@ -0,0 +1,55 @@ +|||||oy +~~~~~01|Druid +~~~~~02|Classes|Druid +~~~~~03|Yavanna|Druid +#####R=== Druids === + +#####GDescription +When Melkor first dug up Utumno and Angband, rivers were polluted and gave +birth to dark clouds of stinging insects; animals changed into dark, horrible +horned things and the forests themselves screamed in horror at their corruption. + +*****g_yavann.txt*0[Yavanna] heard this scream and gave to some of the children of Eru the strength +to defend Nature; at first Ents were chosen, but later on other races were +allowed to tread the path of the Druid. + +The embodiment of life itself, a Druid is a true force of nature and nothing +can prevent him from completing his final quest: returning Angband to the +grassy sunlit plain it once was. + + +#####GStarting Stat Modifiers +Strength -1 +Intelligence -3 +Wisdom +3 +Dexterity -1 +Constitution +0 +Charisma +2 +Hit Die +d2 +Spell Points +0% +Exp Penalty 20% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.700] + Weaponmastery 1.000 [0.750] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 0.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 0.000 [0.600] +Spirituality 1.000 [1.000] + Prayer 1.000 [1.500] + Mindcraft 0.000 [0.600] +Monster-lore 1.000 [1.200] + Summoning 1.000 [0.700] + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GStarting Equipment +A Druid begins the game with: + a Spellbook of Charm Animal + a Mace diff --git a/lib/mods/theme/help/c_geoman.txt b/lib/mods/theme/help/c_geoman.txt new file mode 100644 index 00000000..47855875 --- /dev/null +++ b/lib/mods/theme/help/c_geoman.txt @@ -0,0 +1,59 @@ +|||||oy +~~~~~01|Geomancer +~~~~~02|Classes|Geomancer +#####R=== Geomancers === + +#####GDescription +Geomancers harness the power of the elements earth, air, fire and water. +The level of their *****skills.txt*60[Geomancy] skill gives them access to their own +*****m_geoman.txt*0[school of Geomancy], but the levels of the Fire, Water, Air, and Earth +skills will have an effect on the outcome of each spell. + +Geomancers need the aid of a Mage Staff in order to use their powers. + +#####GStarting Stat Modifiers +Strength -5 +Intelligence +3 +Wisdom +0 +Dexterity +1 +Constitution -2 +Charisma +1 +Hit Die +d0 +Spell Points +50% +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.200] + Weaponmastery 0.700 [0.400] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 1.000 [0.700] + Geomancy 1.000 [0.700] + Fire 1.000 [1.050] + Water 1.000 [1.050] + Air 1.000 [1.050] + Earth 1.000 [1.050] + Meta 0.000 [0.700] + Conveyance 0.000 [0.700] + Divination 0.000 [0.700] + Temporal 0.000 [0.700] + Mind 0.000 [0.700] + Nature 0.000 [0.700] + Necromancy 0.000 [0.700] + Runecraft 0.000 [0.700] + Thaumaturgy 0.000 [0.700] +Spirituality 1.000 [0.550] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GStarting Equipment +A Geomancer begins the game with: + a Spellbook of Geyser + a Mage Staff diff --git a/lib/mods/theme/help/c_hafted.txt b/lib/mods/theme/help/c_hafted.txt new file mode 100644 index 00000000..7e8a3f89 --- /dev/null +++ b/lib/mods/theme/help/c_hafted.txt @@ -0,0 +1,54 @@ +~~~~~01|Haftedmaster +~~~~~02|Classes|Haftedmaster +#####R=== Haftedmasters === + +#####GDescription +The Haftedmaster is a Warrior who specialises in blunt weapons. + +The training is so intense and specific that Haftedmasters gain huge bonuses +when fighting with their chosen weapon, dependent on their *****skills.txt*06[Hafted-mastery] skill. + +In most other respects they perform about as well as a generic Warrior. + +#####GStarting Stat Modifiers +Strength +5 +Intelligence -2 +Wisdom -2 +Dexterity +2 +Constitution +2 +Charisma -1 +Hit Die +d9 +Spell Points +0% +Exp Penalty 0% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.900] + Weaponmastery 1.000 [0.950] + Sword-mastery 0.000 [0.300] + Axe-mastery 0.000 [0.300] + Hafted-mastery 1.000 [0.700] + Stunning-blows 0.000 [0.500] + Polearm-mastery 0.000 [0.300] + Archery 1.000 [0.600] + Antimagic 0.000 [0.550] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 1.000 [0.900] +Magic 1.000 [0.300] + Magic-Device 1.000 [1.150] +Spirituality 1.000 [0.400] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Extra Max Blow(1) 1 +Extra Max Blow(2) 1 +Spread blows 25 + +#####GStarting Equipment +An Haftedmaster begins the game with: + a Ring of Fear Resistance + a Chain Mail + a Flail diff --git a/lib/mods/theme/help/c_lorema.txt b/lib/mods/theme/help/c_lorema.txt new file mode 100644 index 00000000..35c2093b --- /dev/null +++ b/lib/mods/theme/help/c_lorema.txt @@ -0,0 +1,54 @@ +|||||oy +~~~~~01|Loremaster +~~~~~02|Classes|Loremaster +#####R=== Loremasters === + +#####GDescription +Loremasters are students of the creatures of Arda. + +To protect themselves during their observations, they usually learn how to +pass unobserved, but should their attempt fail they have decent saving throws +and almost always learn some kind of combat style, but the exact preference +varies from Loremaster to Loremaster. + +As a result of their studies, they become familiar with a broad range of +skills, ranging from *****skills.txt*45[Possession] and *****m_symbio.txt*0[Symbiosis] to *****skills.txt*43[Summoning] and *****skills.txt*47[Mimicry]. + +#####GStarting Stat Modifiers +Strength +1 +Intelligence -2 +Wisdom +1 +Dexterity +1 +Constitution +0 +Charisma +1 +Hit Die +d8 +Spell Points +0% +Exp Penalty 40% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.700] + Weaponmastery 1.000 [0.700] + Archery 1.000 [0.700] + Barehand-combat 1.000 [0.700] +Sneakiness 1.000 [0.700] + Stealth 1.000 [0.700] + Disarming 1.000 [0.700] +Magic 0.000 [0.600] + Magic-Device 1.000 [1.000] +Spirituality 1.000 [0.700] + Prayer 0.000 [0.500] + Music 0.000 [0.300] +Monster-lore 1.000 [1.100] + Summoning 0.000 [0.500] + Corpse-preservation 1.000 [0.700] + Possession 0.000 [0.500] + Symbiosis 0.000 [0.500] + Mimicry 0.000 [0.500] + +#####GStarting Equipment +A Loremaster begins the game with: + a Sling + a Hard Leather Armour + a Quarterstaff + some Rounded Pebbles diff --git a/lib/mods/theme/help/c_mage.txt b/lib/mods/theme/help/c_mage.txt new file mode 100644 index 00000000..949d3bcc --- /dev/null +++ b/lib/mods/theme/help/c_mage.txt @@ -0,0 +1,67 @@ +|||||oy +~~~~~01|Mage +~~~~~02|Classes|Mage +#####R=== Mages === + +#####GDescription +A Mage must live by his wits. He cannot hope to simply hack his way +through the dungeon, and so must therefore use his magic to defeat, +deceive, confuse, and escape. A Mage is not really complete without an +assortment of magical devices to use in addition to his spells. He can +master the higher level magical devices easily and has good saving throws. + +There is no reason a Mage cannot become a good fighter, but spells are +his true realm. For more information on magic schools and spell effects see +the *****magic.txt*01[Magic help file]. + +#####GStarting Stat Modifiers +Strength -5 +Intelligence +3 +Wisdom +0 +Dexterity +1 +Constitution -2 +Charisma +1 +Hit Die +d0 +Spell Points +50% +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.500] + Weaponmastery 0.700 [0.500] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.200] + Spell-power 0.000 [0.600] + Sorcery 0.000 [0.200] + Mana 1.000 [0.900] + Geomancy + Fire 0.000 [0.900] + Water 0.000 [0.900] + Air 0.000 [0.900] + Earth 0.000 [0.900] + Meta 0.000 [0.900] + Conveyance 0.000 [0.900] + Divination 0.000 [0.900] + Temporal 0.000 [0.900] + Mind 0.000 [0.900] + Nature 0.000 [0.900] + Necromancy 0.000 [0.700] + Runecraft 0.000 [0.700] + Thaumaturgy 0.000 [0.700] +Spirituality 1.000 [0.550] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +*A Mage cannot learn the Geomancy skill, but it is shown in his skill +screen because the elemental schools are sub-skills of it. + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GStarting Equipment +A Mage begins the game with: + a Book of Beginner Cantrips + a Dagger diff --git a/lib/mods/theme/help/c_mercen.txt b/lib/mods/theme/help/c_mercen.txt new file mode 100644 index 00000000..75129d56 --- /dev/null +++ b/lib/mods/theme/help/c_mercen.txt @@ -0,0 +1,49 @@ +~~~~~01|Mercenary +~~~~~02|Classes|Mercenary +#####R=== Mercenaries === + +#####GDescription +Mercenaries are daring swashbucklers, masters of the blade. They +do not have the magical abilities Rogues have, but they are just +as stealthy and much deadlier with a light sword. They do gain +some magical mastery over time, but only in the Temporal school. + +#####GStarting Stat Modifiers +Strength +2 +Intelligence +1 +Wisdom -2 +Dexterity +3 +Constitution +1 +Charisma -1 +Bonus Blows 0 +Hit Die +d6 +Exp Penalty 25% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.700] + Weaponmastery 1.000 [0.900] + Sword-mastery 1.000 [0.700] + Critical-hits 1.000 [0.700] +Sneakiness 1.000 [2.000] + Stealth 1.000 [1.500] + Disarming 1.000 [2.000] + Backstab 1.000 [1.000] + Stealing 1.000 [2.000] + Dodging 1.000 [2.000] +Magic 1.000 [0.700] + Magic-Device 1.000 [1.550] + Temporal 0.000 [1.000] +Spirituality 1.000 [0.700] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GStarting Equipment +A mercenary begins the game with: + a rapier + a cloak + +#####GInnate Abilities: +#####BAbility Character level +Extra-Max-Blow(1) 10 +Extra-Max-Blow(1) 15
\ No newline at end of file diff --git a/lib/mods/theme/help/c_merch.txt b/lib/mods/theme/help/c_merch.txt new file mode 100644 index 00000000..31fb60dd --- /dev/null +++ b/lib/mods/theme/help/c_merch.txt @@ -0,0 +1,29 @@ +#####R=== Merchants === + +#####GDescription +A Merchant is neither a warrior nor a spellcaster. They still have some great +advantages, they can use chests to warp items into other items, they can +indentify items, they soon learn to detect all objects in the area, and +at higher level they can see all monsters carrying objects. They will also +get the power to appraise items and to turn them into gold. A merchant will +naturraly get better prices in shops and get access to the merchant guild +services, loan and item request. + +#####GPrimary Stats +Charisma +Intelligence (Ability stat) + +#####GMagic Usage +Merchants can use portable holes to carry more stuff than other classes but +at the cost of an increased weight. To do that they must wear a portable hole +and use it with 'm'. +They also can use their merchants abilities and midas touch in the 'U' menu. + +#####GStarting Equipment +A merchant begins the game with: + A portable hole + A small steel chest containing gold and items + A long sword + A wand of tame monsters + + diff --git a/lib/mods/theme/help/c_mimic.txt b/lib/mods/theme/help/c_mimic.txt new file mode 100644 index 00000000..b9378a03 --- /dev/null +++ b/lib/mods/theme/help/c_mimic.txt @@ -0,0 +1,53 @@ +~~~~~01|Mimic +~~~~~02|Classes|Mimic +#####R=== Mimics === + +#####GDescription +Mimics possess the ability to transform into various creatures using +special cloaks. While transformed, they lose their intrinsic abilities, +and gain those of the creature they have transformed into. + +At higher skill levels, Mimics gain additional Mimicry powers which help them +to further blend in with their surroundings or modify themselves. + +See more on *****m_mimic.txt*0[Mimicry powers]. + + +#####GStarting Stat Modifiers +Strength +1 +Intelligence -2 +Wisdom +1 +Dexterity +1 +Constitution +0 +Charisma +1 +Hit Die +d8 +Spell Points +0% +Exp Penalty 40% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.800] + Weaponmastery 1.000 [0.800] + Archery 1.000 [0.700] + Barehand-combat 1.000 [0.600] +Sneakiness 1.000 [0.800] + Stealth 1.000 [0.800] + Disarming 1.000 [0.700] +Magic 1.000 [0.700] + Magic-Device 1.000 [1.000] +Spirituality 1.000 [0.500] + Prayer 0.000 [0.500] + Music 0.000 [0.300] +Monster-lore 1.000 [1.100] + Corpse-preservation 1.000 [0.900] + Possession 0.000 [0.100] + Mimicry 1.000 [0.800] + +#####GStarting Equipment +A Mimic begins the game with: + a Mouse Fur + a Potion of Healing + a Dagger + + + diff --git a/lib/mods/theme/help/c_mindcr.txt b/lib/mods/theme/help/c_mindcr.txt new file mode 100644 index 00000000..c4ed2747 --- /dev/null +++ b/lib/mods/theme/help/c_mindcr.txt @@ -0,0 +1,57 @@ +|||||oy +~~~~~01|Mindcrafter +~~~~~02|Classes|Mindcrafter +#####R=== Mindcrafters === + +#####GDescription +The Mindcrafter is a priest who uses the powers of mind instead of magic. +These abilities vary from simple extrasensory perception to mental domination of +others. Since these powers are developed by the practice of certain +disciplines, a Mindcrafter requires no spellbooks to use them. +The Mindcrafter uses the Mindcraft skill to determine how well she can +perform these psychic "spells", and available powers are simply determined by +the skill level. In combat a Mindcrafter is roughly the equivalent of a +priest. + +#####GStarting Stat Modifiers +Strength -1 +Intelligence -3 +Wisdom +3 +Dexterity -1 +Constitution +0 +Charisma +2 +Hit Die +d2 +Spell Points +0% +Exp Penalty 20% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.700] + Weaponmastery 1.000 [0.700] +Sneakiness 1.000 [1.100] + Stealth 0.000 [0.400] + Disarming 0.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.150] + Spell-power 0.000 [0.600] + Necromancy 0.000 [0.400] +Spirituality 1.000 [1.000] + Prayer 1.000 [0.900] + Mindcraft 1.000 [0.900] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GMindcraft Powers +Although the powers of a Mindcrafter may seem like magic, this is not +-- strictly speaking -- the case. They are mental powers, independent +of the ordinary sources of magic. Consequently, Mindcrafters are not +interested in 'magic' and learn no spells. These mental powers can be +accessed through the "m" command, and you can find a full list of their +powers in the *****m_mindcr.txt*0[Mindcraft powers] document. + +#####GStarting Equipment +A Mindcrafter begins the game with: + a Mace diff --git a/lib/mods/theme/help/c_monk.txt b/lib/mods/theme/help/c_monk.txt new file mode 100644 index 00000000..87730f18 --- /dev/null +++ b/lib/mods/theme/help/c_monk.txt @@ -0,0 +1,87 @@ +|||||oy +~~~~~01|Monk +~~~~~02|Classes|Monk +#####R=== Monks === + +#####GDescription +The Monk character class is very different from all other classes. +Although they can use weapons and armour just like any other class, +their training in martial arts makes them much more powerful with no +armour nor weapons. + +As the Monk's skill level rises, new and more powerful forms of attack become +available. It is also rumoured that the monastic training makes experienced +monks faster than any other character class! + +A Monk might need to wear some kind of armour to gain the resistances necessary +for survival at higher levels, but if that armour is too heavy, it will +severely disturb his/her martial arts maneuvers. + +If skill points are invested in *****skills.txt*20[Dodging], a Monk's defensive capabilities +(blocking and dodging) will also increase. However, if armour is being worn, +dodging is much less effective. Fortunately, a Monk can increase his/her +ability to fight while still wearing armor by increasing his/her +*****skills.txt*13[Barehanded-combat] skill. + +Monks also have access to the schools of *****m_meta.txt*0[Meta], +*****m_tempo.txt*0[Temporal] and *****m_mind.txt*0[Mind] magic. + +#####GStarting Stat Modifiers +Strength +1 +Intelligence -2 +Wisdom +1 +Dexterity +1 +Constitution +0 +Charisma +1 +Hit Die +d8 +Spell Points +0% +Exp Penalty 40% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 0.000 [0.900] + Weaponmastery 0.000 [0.300] + Archery 0.000 [0.400] + Barehand-combat 1.000 [0.900] +Sneakiness 1.000 [0.900] + Stealth 1.000 [0.900] + Disarming 1.000 [0.900] + Dodging 0.000 [0.700] +Magic 0.000 [0.600] + Magic-Device 1.000 [1.000] + Meta 0.000 [0.500] + Temporal 0.000 [0.500] + Mind 0.000 [0.500] +Spirituality 1.000 [0.900] + Prayer 0.000 [0.500] + Music 0.000 [0.300] +Monster-lore 1.000 [1.100] + Corpse-preservation 1.000 [0.500] + Possession 0.000 [0.100] + +#####GStarting Equipment +A Monk begins the game with: + a Potion of Healing + a Soft Leather Armour +~~~~~03|Monk|Monk attacks +~~~~~04|Tables|Monk attacks +#####GMonk Attacks +#####BAttack Name Min.lvl Damage Stun Notes +----------------------------------------------------------------------------- +Punch 1 1d4 - +Kick 2 1d6 - +Strike 3 1d7 - +Knee 5 2d3 * Painful to males; likely to stun them +Elbow 7 1d8 - +Butt 9 2d5 - +Ankle Kick 11 3d4 - May slow down the opponent +Uppercut 13 4d4 6 +Double-kick 16 5d4 8 +Cat's Claw 20 5d5 - +Jump Kick 25 5d6 10 +Eagle's Claw 29 6d6 - +Circle Kick 33 6d8 10 +Iron Fist 37 8d8 10 +Flying Kick 41 8d10 12 +Dragon Fist 45 10d10 16 +Crushing Blow 48 10d12 18 diff --git a/lib/mods/theme/help/c_necro.txt b/lib/mods/theme/help/c_necro.txt new file mode 100644 index 00000000..f3a5ad2c --- /dev/null +++ b/lib/mods/theme/help/c_necro.txt @@ -0,0 +1,80 @@ +|||||oy +~~~~~01|Necromancer +~~~~~02|Classes|Necromancer +#####R=== Necromancers === + +#####GDescription +As a Priest devotes his life to his chosen deity, so Necromancers +devote their lives to the study of death. Familiar with all of the +forms of unbeing, they are able to manipulate spirit and flesh for +great effect. + +#####GStarting Stat Modifiers +Strength -5 +Intelligence +3 +Wisdom +0 +Dexterity +1 +Constitution -2 +Charisma +1 +Hit Die +d0 +Spell Points +50% +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.400] + Weaponmastery 0.700 [0.600] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.200] + Spell-power 0.000 [0.600] + Mana 0.000 [0.600] + Geomancy + Fire 0.000 [0.800] + Water 0.000 [0.700] + Air 0.000 [0.700] + Earth 0.000 [0.800] + Meta 0.000 [0.700] + Conveyance 0.000 [0.700] + Divination 0.000 [0.700] + Temporal 0.000 [0.800] + Mind 0.000 [0.900] + Nature 0.000 [0.500] + Necromancy 1.000 [1.000] + Runecraft 0.000 [0.700] + Thaumaturgy 0.000 [0.700] +Spirituality 1.000 [0.550] + Prayer 0.000 [0.500] +Monster-lore 1.000 [1.100] + Corpse-preservation 5.000 [0.900] + +*A Necromancer cannot learn the Geomancy skill, but it is shown in his skill +screen because the elemental schools are sub-skills of it. + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 +Undead Form 25 + +#####GStarting Equipment +A Necromancer begins the game with: + a Book of Beginner Cantrips + a Dagger + +#####GNecromancy +*****m_necrom.txt*0[Necromancy powers] [[[[[Bare accessed using the 'm' key.] +Even from the start of his career, an inexperienced Necromancer +can channel forces from the underworld to assault the mind of +living creatures, therefore terrifying them. With little effort he +can also learn the art of reanimating a dead corpse, turning it into +an undead slave. It is only at a later point in his career that this +foul mage learns to manipulate his life force as well, gaining the +ability to absorb hit points from both living and dead opponents. +The greatest Necromancers even gain the ability to survive their own +death: when they should be killed, they instead turn into a ghostly +being; they then receive a set number of Death Points, which are in +all respects similar to hit points except that they go automatically +down each turn. If the Necromancer manages to kill a certain number +of creatures before his Death Points reach 0 he is returned to life; +otherwise his will dissipates and he finally achieves true death. diff --git a/lib/mods/theme/help/c_pacif.txt b/lib/mods/theme/help/c_pacif.txt new file mode 100644 index 00000000..7ec7e7d1 --- /dev/null +++ b/lib/mods/theme/help/c_pacif.txt @@ -0,0 +1,10 @@ +~~~~~01|Pacifist +~~~~~02|Classes|Pacifist +#####R=== Pacifists === + +#####GDescription +A Pacifist is someone who prefers not to use violence to +achieve their ends. There are two types of Pacifists: + +*****c_peacemag.txt*0[Peace-mage] +*****c_trapper.txt*0[Trapper]
\ No newline at end of file diff --git a/lib/mods/theme/help/c_palad.txt b/lib/mods/theme/help/c_palad.txt new file mode 100644 index 00000000..b4cc650b --- /dev/null +++ b/lib/mods/theme/help/c_palad.txt @@ -0,0 +1,49 @@ +|||||oy +~~~~~01|Paladin +~~~~~02|Classes|Paladin +~~~~~03|Tulkas|Paladin +#####R=== Paladins === + +#####GDescription +A Paladin is a warrior-priest at the service of *****g_tulkas.txt*0[Tulkas]. As such, his duty +is to be ever vigilant against the forces of evil and even seek and destroy +those monsters which are evil to the core, especially the foulest +spawns of hell. Luckily, his quest is eased by the blessing bestowed +by Tulkas himself. + +#####GStarting Stat Modifiers +Strength -1 +Intelligence -3 +Wisdom +3 +Dexterity -1 +Constitution +0 +Charisma +2 +Hit Die +d2 +Spell Points +0% +Exp Penalty 20% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.800] + Weaponmastery 1.000 [0.800] + Barehand-combat 0.000 [0.900] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 0.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 0.000 [0.600] +Spirituality 1.000 [1.000] + Prayer 1.000 [1.400] + Mindcraft 0.000 [0.600] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 +Extra Max Blow(1) 1 + +#####GStarting Equipment +A Paladin begins the game with: + a Spellbook of Divine Aim + a Two-Handed Sword diff --git a/lib/mods/theme/help/c_peacemag.txt b/lib/mods/theme/help/c_peacemag.txt new file mode 100644 index 00000000..f75664f3 --- /dev/null +++ b/lib/mods/theme/help/c_peacemag.txt @@ -0,0 +1,46 @@ +~~~~~01|Peace-mage +~~~~~02|Classes|Peace-mage +#####R=== Peace-mages === + +#####GDescription +A Pacifist is someone who prefers not to use violence to +achieve their ends. The peace-mages choose to use defensive +spells and rely on symbiosis to protect themselves. They +may also use spells provided by their deities. + +#####GStarting Stat Modifiers +Strength 0 +Intelligence +2 +Wisdom +2 +Dexterity +2 +Constitution 0 +Charisma +4 +Bonus Blows 0 +Hit Die 0 +Exp Penalty 0% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Sneakiness 0.000 [0.600] + Stealth 0.000 [0.600] + Disarming 1.000 [0.600] + Dodging 1.000 [0.700] +Magic 1.000 [0.600] + Spell-power 0.000 [0.500] + Meta 0.000 [0.700] + Conveyance 1.000 [0.700] + Divination 0.000 [0.700] + Temporal 0.000 [0.700] + Nature 1.000 [1.000] +Spirituality 0.000 [0.700] + Prayer 0.000 [0.500] +Monster-lore 1.000 [0.900] + Symbiosis 1.000 [0.600] + +#####GStarting Equipment +A peace-mage begins the game with: + a scroll of summon never-moving pet + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 15
\ No newline at end of file diff --git a/lib/mods/theme/help/c_polear.txt b/lib/mods/theme/help/c_polear.txt new file mode 100644 index 00000000..8ea2f04a --- /dev/null +++ b/lib/mods/theme/help/c_polear.txt @@ -0,0 +1,52 @@ +~~~~~01|Polearmmaster +~~~~~02|Classes|Polearmmaster +#####R=== Polearmmasters === + +#####GDescription +The Polearmmaster is a Warrior who specialises in polearms. + +The training is so intense and specific that Polearmmasters gain huge bonuses +when fighting with their chosen weapon, dependent on their Polearm-mastery +skill. In most other respects they perform about as well as a generic Warrior. + +#####GStarting Stat Modifiers +Strength +5 +Intelligence -2 +Wisdom -2 +Dexterity +2 +Constitution +2 +Charisma -1 +Hit Die +d9 +Spell Points +0% +Exp Penalty 0% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.900] + Weaponmastery 1.000 [0.950] + Sword-mastery 0.000 [0.300] + Axe-mastery 0.000 [0.300] + Hafted-mastery 0.000 [0.300] + Polearm-mastery 1.000 [0.700] + Archery 1.000 [0.600] + Antimagic 0.000 [0.550] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 1.000 [0.900] +Magic 1.000 [0.300] + Magic-Device 1.000 [1.150] +Spirituality 1.000 [0.400] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Extra Max Blow(1) 1 +Extra Max Blow(2) 1 +Spread blows 25 + +#####GStarting Equipment +A Polearmmaster begins the game with: + a Ring of Fear Resistance + a Chain Mail + a Pike diff --git a/lib/mods/theme/help/c_posses.txt b/lib/mods/theme/help/c_posses.txt new file mode 100644 index 00000000..2d67a883 --- /dev/null +++ b/lib/mods/theme/help/c_posses.txt @@ -0,0 +1,70 @@ +~~~~~01|Possessor +~~~~~02|Classes|Possessor +#####R=== Possessors === + +#####GDescription +Possessors are unusual; they aren't good fighters, and they can't cast +magic. Their special ability is that of being able to leave their +bodies and inhabit corpses. While "in" a corpse, the Possessor gains +the abilities of the monster, and their hit points and the monster's +are averaged. (Most monsters have no, or very few, spell points.) While +in the incorporeal form between bodies, they have only one hitpoint. + +#####GStarting Stat Modifiers +Strength +1 +Intelligence -2 +Wisdom +1 +Dexterity +1 +Constitution +0 +Charisma +1 +Hit Die +d8 +Spell Points +0% +Exp Penalty 40% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.600] + Weaponmastery 1.000 [0.600] + Archery 1.000 [0.400] +Sneakiness 1.000 [0.700] + Stealth 1.000 [0.700] + Disarming 1.000 [0.500] +Magic 0.000 [0.600] + Magic-Device 1.000 [1.000] +Spirituality 1.000 [0.500] + Prayer 0.000 [0.500] + Music 0.000 [0.300] +Monster-lore 1.000 [1.100] + Corpse-preservation 1.000 [0.900] + Possession 1.000 [0.800] + +#####GStarting Equipment +A Possessor begins the game with: + a Potion of Healing + a Short Sword + a Hard Leather Armour + +~~~~~03|Possessor|Possessor powers +~~~~~04|Skills|Possession - Possessor powers +#####GPossession +The strange art of reanimating the corpse of a monster and making +it one's own can be of extreme benefit to those skilled in it. The body +the player possesses can grant powerful abilities, such as increased +speed, summoning, healing, breathing, and various resistances, and often +gives the player a large number of hit points. Possessing uniques is +especially neat. + +Possessors leave their own body by using the 'm' command, and choosing +"[I]incarnating powers". Lacking a life force to sustain it, a corpse may rot +immediately when a Possessor leaves it, but a high Possession skill score +may prevent this from happening. They then become a very vulnerable ghostly +being which travels to where another corpse is lying on the floor, and +possesses it by again using the 'm' command. Once possessed, many +monster corpses allow the player to perform various special actions +(such as blinking or summoning) by using the option "Use your [R]ace +powers". + +All corpses alter the player's melee attacks. When they incarnate in a +monster that allows the use of a weapon, monster blows are ignored +[[[[[Btotally]. When they incarnate in a monster that doesn't allow use of a +weapon (dragons for example) they use the monster blows [[[[[Band only them]! diff --git a/lib/mods/theme/help/c_pr_drk.txt b/lib/mods/theme/help/c_pr_drk.txt new file mode 100644 index 00000000..fa99f89f --- /dev/null +++ b/lib/mods/theme/help/c_pr_drk.txt @@ -0,0 +1,57 @@ +|||||oy +~~~~~01|Dark Priest +~~~~~02|Classes|Dark Priest +~~~~~03|Melkor|Dark Priests +#####R=== Melkor's Priests === + +#####GDescription +All gods have priests; but those serving *****g_melkor.txt*0[Melkor], the dark enemy, are not +like their good counterparts. While usually it takes devotion and awe to be +inspired into serving a deity, Melkor's followers revere him because of the +power he gives them. Some of them may even be so ambitious as to aspire to +take his place upon the black throne of Angband. This he knows very well, but +as long as he can use those puny mortals to inspire fear into the followers of +the Valar and to bring destruction to Arda, he doesn't mind; he even lends power +to the ones more bent on destruction, while sapping their minds to reduce them +to unthinking slaves. + +#####GStarting Stat Modifiers +Strength -1 +Intelligence -3 +Wisdom +3 +Dexterity -1 +Constitution +0 +Charisma +2 +Hit Die +d2 +Spell Points +0% +Exp Penalty 20% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.700] + Weaponmastery 1.000 [0.700] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 0.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 0.000 [0.800] +**Udun 0.000 [0.400] + Necromancy 0.000 [0.800] +Spirituality 1.000 [1.000] + Prayer 1.000 [1.400] +Monster-lore 0.000 [0.500] + Corpse-preservation 1.000 [1.000] + +**Actually, every character has this level of proficiency with the *****m_udun.txt*0[Udun] school, +provided they are worshipping Melkor + + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GStarting Equipment +A Priest serving Melkor begins the game with: + a Spellbook of Curse + a Mace diff --git a/lib/mods/theme/help/c_pr_eru.txt b/lib/mods/theme/help/c_pr_eru.txt new file mode 100644 index 00000000..ff5a0126 --- /dev/null +++ b/lib/mods/theme/help/c_pr_eru.txt @@ -0,0 +1,55 @@ +|||||oy +~~~~~01|Priest - Eru +~~~~~02|Classes|Priest - Eru +~~~~~03|Eru|Priest - Eru +#####R=== Eru's Priests === + +#####GDescription +*****g_eru.txt*0[Eru] is the father of the Valar: he created the world and all its inhabitants. He is the wisest being ever and even if he foresaw Morgoth's +evil, his role was that of the creator; as such, he chose not to destroy +anything on Arda. + +His priests are therefore expected to avoid all forms of bloodshed (so they +can only use blunt weapons without penalty); however, Eru knows that sometimes +destruction is unavoidable and marks a blade with his rune; his priests call +them Blessed and use them without feeling guilty, for they know that divine +wisdom will guide every swing of those weapons. + +Still, a priest serving Eru will find that his true strength lies in knowledge +and in the use of the force of Mana to avoid close contact with evil beings, +rather than in blind assault of Morgoth's hordes. + +#####GStarting Stat Modifiers +Strength -1 +Intelligence -3 +Wisdom +3 +Dexterity -1 +Constitution +0 +Charisma +2 +Hit Die +d2 +Spell Points +0% +Exp Penalty 20% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.700] + Weaponmastery 1.000 [0.700] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 0.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 0.000 [0.700] +Spirituality 1.000 [1.000] + Prayer 1.000 [1.500] + Mindcraft 0.000 [0.600] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GStarting Equipment +A Priest serving Eru begins the game with: + a Spellbook of See the Music + a Mace diff --git a/lib/mods/theme/help/c_pr_man.txt b/lib/mods/theme/help/c_pr_man.txt new file mode 100644 index 00000000..3f83e8af --- /dev/null +++ b/lib/mods/theme/help/c_pr_man.txt @@ -0,0 +1,54 @@ +|||||oy +~~~~~01|Priest - Manwe +~~~~~02|Classes|Priest - Manwe +~~~~~03|Manwe|Priest - Manwe +#####R=== Manwe's Priests === + +#####GDescription +As the forces of darkness arose, *****g_manwe.txt*0[Manwe], lord of air, realised that urgent +action was needed to save Arda from the incoming darkness. So he started +gathering followers from the ranks of men and elves and he instructed them to +do battle against the forces of Udun. + +His priests must be quick and strike before the situation becomes +critical, always keeping a direct line of prayer with their patron deity. + +Manwe doesn't tolerate laziness, but He also does not appreciate mindless +killing; only a few measure up to his standards, but those are granted access +to a whole series of divine powers which will help them in their enduring +efforts. + +#####GStarting Stat Modifiers +Strength -1 +Intelligence -3 +Wisdom +3 +Dexterity -1 +Constitution +0 +Charisma +2 +Hit Die +d2 +Spell Points +0% +Exp Penalty 20% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.700] + Weaponmastery 1.000 [0.750] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 0.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 0.000 [0.600] +Spirituality 1.000 [1.000] + Prayer 1.000 [1.500] + Mindcraft 0.000 [0.600] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GStarting Equipment +A Priest serving Manwe begins the game with: + a Spellbook of Manwe's Blessing + a Mace diff --git a/lib/mods/theme/help/c_pr_mand.txt b/lib/mods/theme/help/c_pr_mand.txt new file mode 100644 index 00000000..df98e911 --- /dev/null +++ b/lib/mods/theme/help/c_pr_mand.txt @@ -0,0 +1,49 @@ +|||||oy +~~~~~01|Priest - Mandos +~~~~~02|Classes|Priest - Mandos +~~~~~03|Mandos|Priest - Mandos +#####R=== Priests of Mandos === + +#####GDescription +*****g_mandos.txt*0[Mandos] is the Doomsman of the Valar, Lord of +the House of the Dead and he recalls the souls of the fallen ones. +A Master of Spirit, he knows all that is going to happen, except +that which lies in the will of Eru himself. Manwe calls upon Mandos +to pass judgment upon the Ainur and Eru's children alike. The priests +of Mandos fight righteously to rid the world of evil. + +#####GStarting Stat Modifiers +Strength -1 +Intelligence -3 +Wisdom +3 +Dexterity -1 +Constitution +0 +Charisma +2 +Bonus Blows 0 +Hit Die +d2 +Exp Penalty 20% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.700] + Weaponmastery 1.000 [0.700] + Hafted-mastery 0.000 [0.400] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 0.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 0.000 [0.800] +Spirituality 1.000 [1.000] + Prayer 1.000 [1.500] + Mindcraft 0.000 [0.600] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Perfect-casting 1 + +#####GStarting Equipment +A priest serving Varda begins the game with: + A spellbook of Tears of Luthien + A mace
\ No newline at end of file diff --git a/lib/mods/theme/help/c_pr_ulmo.txt b/lib/mods/theme/help/c_pr_ulmo.txt new file mode 100644 index 00000000..6f82b368 --- /dev/null +++ b/lib/mods/theme/help/c_pr_ulmo.txt @@ -0,0 +1,50 @@ +|||||oy +~~~~~01|Priest - Ulmo +~~~~~02|Classes|Priest - Ulmo +~~~~~03|Ulmo|Priest - Ulmo +#####R=== Ulmo's Priests === + +#####GDescription +*****g_ulmo.txt*0[Ulmo] is the Lord of the Waters, second in power only +to Manwe, and the most wrathful of the Valar after Tulkas Astaldo. He +made a great contribution to the War of Wrath when he led Tuor to Gondolin, +and he is ever watchful for the contrivances of Melkor Bauglir. His +preferred weapon type is the polearm, and his priests learn to become +very proficient with it. A priest of Ulmo is like unto living +water, channelled through Ulmo's magic. + +#####GStarting Stat Modifiers +Strength -1 +Intelligence -3 +Wisdom +3 +Dexterity -1 +Constitution +0 +Charisma +2 +Bonus Blows 0 +Hit Die +d2 +Exp Penalty 20% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.700] + Weaponmastery 1.000 [0.700] + Polearm-mastery 0.000 [0.400] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 0.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 0.000 [0.800] +Spirituality 1.000 [1.000] + Prayer 1.000 [1.500] + Mindcraft 0.000 [0.600] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Perfect-casting 1 + +#####GStarting Equipment +A priest serving Ulmo begins the game with: + A spellbook of Song of Belegaer + A trident
\ No newline at end of file diff --git a/lib/mods/theme/help/c_pr_varda.txt b/lib/mods/theme/help/c_pr_varda.txt new file mode 100644 index 00000000..f6473df4 --- /dev/null +++ b/lib/mods/theme/help/c_pr_varda.txt @@ -0,0 +1,50 @@ +|||||oy +~~~~~01|Priest - Varda +~~~~~02|Classes|Priest - Varda +~~~~~03|Varda|Priest - Varda +#####R=== Varda's Priests === + +#####GDescription +*****g_varda.txt*0[Varda] is called Elentari, which means The Queen +of the Stars. She set the stars in the sky, for which the Eldar of +Middle-earth revered her, calling her by the name of Elbereth. Her +priests battle the darkness with light, and also have access to the +Mana and Meta schools of magic by the grace of Varda. Varda prefers +it if her servants do not get too close to the Shadow, and thus she +grants a bonus in Archery to her priests. + +#####GStarting Stat Modifiers +Strength -1 +Intelligence -3 +Wisdom +3 +Dexterity -1 +Constitution +0 +Charisma +2 +Bonus Blows 0 +Hit Die +d2 +Exp Penalty 20% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.700] + Weaponmastery 1.000 [0.700] + Archery 0.000 [0.400] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 0.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 0.000 [0.800] +Spirituality 1.000 [1.000] + Prayer 1.000 [1.500] + Mindcraft 0.000 [0.600] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Perfect-casting 1 + +#####GStarting Equipment +A priest serving Varda begins the game with: + A spellbook of Light of Valinor + A mace
\ No newline at end of file diff --git a/lib/mods/theme/help/c_priest.txt b/lib/mods/theme/help/c_priest.txt new file mode 100644 index 00000000..1eb7bcbb --- /dev/null +++ b/lib/mods/theme/help/c_priest.txt @@ -0,0 +1,17 @@ +|||||oy +~~~~~01|Priests +#####R=== Priests === + +#####GDescription +There are 10 separate classes of Priest: + +*****c_pr_eru.txt*0[Priest(Eru)] +*****c_pr_man.txt*0[Priest(Manwe)] +*****c_pr_ulmo.txt*0[Priest(Ulmo)] +*****c_pr_mand.txt*0[Priest(Mandos)] +*****c_pr_varda.txt*0[Priest(Varda)] +*****c_druid.txt*0[Druid] +*****c_palad.txt*0[Paladin] +*****c_stonewr.txt*0[Stonewright] +*****c_pr_drk.txt*0[Dark-Priest] +*****c_mindcr.txt*0[Mindcrafter] diff --git a/lib/mods/theme/help/c_ranger.txt b/lib/mods/theme/help/c_ranger.txt new file mode 100644 index 00000000..81af7715 --- /dev/null +++ b/lib/mods/theme/help/c_ranger.txt @@ -0,0 +1,56 @@ +|||||oy +~~~~~01|Ranger +~~~~~02|Classes|Ranger +#####R=== Rangers === + +#####GDescription +Rangers are warrior-mages, devoted to nature. They are good fighters +and quite effective with bows; their magic often allows them to avoid +the worst of situations, but they have only a mild chance of resisting +magical effects and are not terribly stealthy. They can, however, +learn the ability to summon aid using totems. + +They have access to the schools of *****m_divin.txt*0[Divination] and *****m_nature.txt*0[Nature] magic. + +#####GStarting Stat Modifiers +Strength +2 +Intelligence +1 +Wisdom +0 +Dexterity +2 +Constitution +1 +Charisma +1 +Hit Die +d4 +Spell Points +0% +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.800] + Weaponmastery 1.000 [0.700] + Archery 1.000 [0.750] + Sling-mastery 0.000 [0.300] + Bow-mastery 0.000 [0.300] + Crossbow-mastery 0.000 [0.300] + Boomerang-mastery 0.000 [0.300] +Sneakiness 1.000 [0.950] + Stealth 0.000 [0.400] + Disarming 1.000 [1.600] +Magic 1.000 [0.700] + Magic-Device 1.000 [1.100] + Divination 0.000 [0.500] + Nature 0.000 [0.500] +Spirituality 1.000 [0.400] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.900] + Summoning 0.000 [0.300] + + +#####GInnate Abilities: +#####BAbility Character level +Ammo creation 2 + +#####GStarting Equipment +A Ranger begins the game with: + a Short Sword + a Short Bow + some Arrows diff --git a/lib/mods/theme/help/c_rogue.txt b/lib/mods/theme/help/c_rogue.txt new file mode 100644 index 00000000..b42df3d5 --- /dev/null +++ b/lib/mods/theme/help/c_rogue.txt @@ -0,0 +1,62 @@ +|||||oy +~~~~~01|Rogue +~~~~~02|Classes|Rogue +#####R== Rogues === + +#####GDescription +A rogue is a jack of all trades, but the master of none. With the notable +exception of Archery and Monster-related skills, Rogues are capable of adapting +to almost any situation. Their strong point lies in stealth and careful +planning: Where a Warrior would simply hack away (and risk being hacked up +himself) or a Mage would Manathrust, a Rogue would awaken a monster with a +dagger in the back, or would wait for the creature to be killed by the line of +traps she had previously laid between her and her opponent. + +Rogues have access to the schools of *****m_convey.txt*0[Conveyance], *****m_divin.txt*0[Divination] and *****m_tempo.txt*0[Temporal] magic. + +#####GStarting Stat Modifiers +Strength +2 +Intelligence +1 +Wisdom -2 +Dexterity +3 +Constitution +1 +Charisma -1 +Hit Die +d6 +Spell Points +0% +Exp Penalty 25% + +#####GStarting Skills +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.700] + Weaponmastery 1.000 [0.700] + Sword-mastery 1.000 [0.300] + Critical-hits 1.000 [0.500] +Sneakiness 1.000 [2.000] + Stealth 1.000 [1.500] + Disarming 1.000 [2.000] + Backstab 1.000 [1.000] + Stealing 1.000 [2.000] + Dodging 1.000 [2.000] +Magic 1.000 [0.700] + Magic-Device 1.000 [1.550] + Conveyance 0.000 [0.500] + Divination 0.000 [0.500] + Temporal 0.000 [0.500] +Spirituality 1.000 [0.700] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Trapping 1 +Extra Max Blow(1) 10 + +#####GStarting Equipment +A Rogue begins the game with: + a Dagger + a Catapult Trap Set + some Iron Shots + + + + diff --git a/lib/mods/theme/help/c_runecr.txt b/lib/mods/theme/help/c_runecr.txt new file mode 100644 index 00000000..8388eff9 --- /dev/null +++ b/lib/mods/theme/help/c_runecr.txt @@ -0,0 +1,110 @@ +~~~~~01|Runecrafter +~~~~~02|Classes|Runecrafter +#####R=== Runecrafters === + +#####GDescription +Instead of using spellbooks like the other spellcasters they instead +use mystic runes. To cast a spell they select a primary rune of the +elements (fire, cold, etc.) and they also choose a set of secondary runes, +which shape the effect of the first one. The secondary runes include +Self, Arrow, Ray, ... and Armageddon. After that they chose the amount +of mana to use and the spell is cast! But the more secondary runes they +chose the more mana is used to cast the spell. They also are bad +fighters, but if they concentrate all their mana in one spell +(especially with a mage staff of mana) they could kill nearly anything. + +#####GStarting Stat Modifiers +Strength -5 +Intelligence +3 +Wisdom +0 +Dexterity +1 +Constitution -2 +Charisma +1 +Hit Die +d0 +Spell Points +50% +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.200] + Weaponmastery 0.700 [0.400] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] +Magic 2.000 [0.950] + Magic-Device 1.000 [1.200] + Spell-power 0.000 [0.600] + Mana 1.000 [0.600] + Geomancy + Fire 0.000 [0.700] + Water 0.000 [0.700] + Air 0.000 [0.700] + Earth 0.000 [0.700] + Meta 0.000 [0.700] + Conveyance 0.000 [0.700] + Divination 0.000 [0.700] + Temporal 0.000 [0.700] + Mind 0.000 [0.700] + Nature 0.000 [0.700] + Necromancy 0.000 [0.700] + Runecraft 1.000 [1.000] + Thaumaturgy 0.000 [0.700] +Spirituality 1.000 [0.550] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +*A Runecrafter cannot learn the Geomancy skill, but it is shown in his skill +screen because the elemental schools are sub-skills of it. + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +~~~~~03|Runecrafter|Runecrafter powers +~~~~~04|Skills|Runecrafting - Runecrafter powers +#####GRune Magic +Runecrafters combine runes using the 'm' command. They first select a +rune that controls magic type, then apply one or more runes to fine-tune +effects, (pressing ESC when done), and then input the amount of mana +they wish to expend on the spell. + +Runecrafters can cast the spells from their runes in several ways: +1. On-the-fly by combining runes when they need them. +2. Memorise rune combinations for quick use when needed (and they don't + need to be able to see then!), and then later cast from memory. +3. Carving them into a Runestone, then using the Runestone later (takes + less mana, but they have to be able to see). + +[[[[[BSpell Types:] +(Some kinds are not listed, and are left for the reader to discover...) + Knowledge: Identify all objects in affected grids, Self-knowledge + if Self rune is used. + Life: Heals monsters in affected grids, heals player if Self rune + is used. + Fire, Cold, Lightning, Acid: Casts magics of that element. + Elements: Irresistible damage. + Mind: A mind blast that badly effects intelligent monsters. + Temporary ESP if Self rune is used. + Gravity: A gravity spell that both does damage and whisks affected + creatures around. + +[[[[[BSpell Effects] (all are listed): + Self: Effects the caster. This rune can be used with any other; + if used alone, only the caster's grid is affected. + Arrow: Spell will include a bolt effect. This allows aiming. + Ray: Spell will include a beam effect. This allows aiming. + Increases difficulty slightly. + Sphere: Spell will end with a circular explosion. Increases + difficulty a bit. Can be used alone, or with Self, Arrow, or + Ray. + Power Surge: Not currently recommended for use. Increases + difficulty a lot. + Armageddon: Hurls down meteors of the magical type in the vicinity + of the caster. Increases difficulty noticeably, but can do a + great deal of damage. + +#####GStarting Equipment +A Runecrafter begins the game with: + a Rune [Fire] + a Rune [Arrow] + a Dagger + diff --git a/lib/mods/theme/help/c_sniper.txt b/lib/mods/theme/help/c_sniper.txt new file mode 100644 index 00000000..008202d8 --- /dev/null +++ b/lib/mods/theme/help/c_sniper.txt @@ -0,0 +1,50 @@ +~~~~~01|Sniper +~~~~~02|Classes|Sniper +#####R=== Snipers === + +#####GDescription +Snipers are stealthy archers who kill from a safe +distance and aren't very good at hand-to-hand combat. +They have some ability in the Conveyance school of +magic, which can let them disappear quickly if the +need should arise. + +#####GStarting Stat Modifiers +Strength +2 +Intelligence +1 +Wisdom +0 +Dexterity +2 +Constitution +1 +Charisma +1 +Bonus Blows 0 +Hit Die +d4 +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.500] + Weaponmastery 1.000 [0.500] + Archery 1.000 [0.750] + Sling-mastery 0.000 [0.300] + Bow-mastery 0.000 [0.300] + Crossbow-mastery 0.000 [0.300] + Boomerang-mastery 0.000 [0.300] +Sneakiness 2.000 [1.000] + Stealth 1.000 [0.700] + Disarming 1.000 [1.000] + Backstab 1.000 [0.700] +Magic 1.000 [0.600] + Magic-Device 1.000 [1.100] + Conveyance 1.000 [0.500] +Spirituality 0.000 [0.500] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GStarting Equipment +A sniper begins the game with: + a short bow + some ammo + +#####GInnate Abilities: +#####BAbility Character level +Ammo creation 2
\ No newline at end of file diff --git a/lib/mods/theme/help/c_sorcer.txt b/lib/mods/theme/help/c_sorcer.txt new file mode 100644 index 00000000..8a33184f --- /dev/null +++ b/lib/mods/theme/help/c_sorcer.txt @@ -0,0 +1,68 @@ +|||||oy +~~~~~01|Sorceror +~~~~~02|Classes|Sorceror +#####R=== Sorcerors === + +#####GDescription +Sorcerors are to magic what Unbelievers are to melee. They are the all- +around best magicians, being able to cast spells from any school using +only a single skill. They cannot comfortably use any weapon but a Mage Staff, and even with a Mage Staff, they will be unable to achieve anything remotely resembling battle effectiveness. + +The energies used for learning Sorcery also sap the life force of a +Sorceror, penalising them with the loss of a percentage of their hit +points equal to their Sorcery skill score and penalising their combat +ability even more strongly. + +For more information on magic schools and spell effects see the +*****magic.txt*01[Magic help file]. + +#####GStarting Stat Modifiers +Strength -5 +Intelligence +3 +Wisdom +0 +Dexterity +1 +Constitution -2 +Charisma +1 +Hit Die +d0 +Spell Points +50% +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] +Magic 1.000 [1.000] + Magic-Device 1.000 [1.000] + Spell-power 0.000 [0.600] + Sorcery 1.000 [0.700] + Mana 0.000 [0.900] + Geomancy + Fire 0.000 [1.000] + Water 0.000 [1.000] + Air 0.000 [1.000] + Earth 0.000 [1.000] + Meta 0.000 [1.000] + Conveyance 0.000 [1.000] + Divination 0.000 [1.000] + Temporal 0.000 [1.000] + Mind 0.000 [1.000] + Nature 0.000 [1.000] + Necromancy 0.000 [1.000] + Runecraft 0.000 [0.900] + Thaumaturgy 0.000 [0.900] +Spirituality 1.000 [0.550] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +*A Sorceror cannot learn the Geomancy skill, but it is shown in his skill +screen because the elemental schools are sub-skills of it. + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GStarting Equipment +A Sorceror begins the game with: + a Book of Beginner Cantrips + a Robe + diff --git a/lib/mods/theme/help/c_stonewr.txt b/lib/mods/theme/help/c_stonewr.txt new file mode 100644 index 00000000..7de1c0ef --- /dev/null +++ b/lib/mods/theme/help/c_stonewr.txt @@ -0,0 +1,50 @@ +|||||oy +~~~~~01|Stonewright +~~~~~02|Classes|Stonewright +~~~~~03|Aule|Stonewright +#####R=== Aule's Priests === + +#####GDescription +*****g_aule.txt*0[Aule] the Smith is concerned with the substance of +Arda; rock and metal. His priests serve him best by forging better +weapons to use in the fight against the Dark, and his most beloved +weapon is the axe, which his followers will find much easier to use +than other types of weapons. Aule's realms are earth and fire, and +his priests have access to these realms by the grace of their Vala. + +#####GStarting Stat Modifiers +Strength -1 +Intelligence -3 +Wisdom +3 +Dexterity -1 +Constitution +0 +Charisma +2 +Bonus Blows 0 +Hit Die +d2 +Exp Penalty 20% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.700] + Weaponmastery 1.000 [0.700] + Axe-mastery 0.000 [0.400] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 0.000 [0.900] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 0.000 [0.800] +Spirituality 1.000 [1.000] + Prayer 1.000 [1.500] + Mindcraft 0.000 [0.600] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Perfect-casting 1 +Extra Max Blow(1) 10 + +#####GStarting Equipment +A priest serving Aule begins the game with: + A spellbook of Firebrand + A light war axe
\ No newline at end of file diff --git a/lib/mods/theme/help/c_summon.txt b/lib/mods/theme/help/c_summon.txt new file mode 100644 index 00000000..a3eca1de --- /dev/null +++ b/lib/mods/theme/help/c_summon.txt @@ -0,0 +1,80 @@ +~~~~~01|Summoners +~~~~~02|Classes|Summoners +#####R=== Summoners === + +#####GDescription +A Summoner is, with one exception, a fairly weak class. While he starts +out a decent enough fighter, his fighting skill doesn't improve that much, +he doesn't cast magic and has little in the way of survival skills. However, +this weakness doesn't trouble him much, because he can summon creatures to +do his bidding and still gain experience from their kills. + +#####GStarting Stat Modifiers +Strength +1 +Intelligence -2 +Wisdom +1 +Dexterity +1 +Constitution 0 +Charisma +1 +Hit Die +d8 +Spell Points +0% +Exp Penalty 40% + +#####GStarting Skills +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.600] + Weaponmastery 1.000 [0.600] + Archery 1.000 [0.400] +Sneakiness 1.000 [0.700] + Stealth 1.000 [0.700] + Disarming 1.000 [0.500] +Magic 1.000 [0.800] + Magic-Device 1.000 [1.000] +Spirituality 1.000 [0.500] + Prayer 0.000 [0.500] + Music 0.000 [0.300] +Monster-lore 16.000 [1.200] + Summoning 1.000 [0.700] + Corpse-preservation 1.000 [1.000] + +#####GStarting Equipment +A Summoner starts the game with: + A Potion of Healing + A Short Sword + A Suit of Hard Leather Armour +~~~~~03|Summoners|Summoning +~~~~~04|Skills|Summoning - Summoning powers +#####GSummoning +[[[[[BThe summoner's powers of invocation are accessed using the 'm' key.] +In order to invoke a monster, a summoner must possess a related totem. + +There are two kinds of summoning, decided by the totem used: + +[[[[[BPartial Summoning] +Partial summoning creates a simulacrum of the monster, with little will +of its own. The Summoner must maintain the simulacrum using mana; when +he runs out, or stops paying the mana, the simulacrum vanishes. + +[[[[[BTrue Summoning] +True summoning is quite different in effect from Partial Summoning, but the +two are closely related in usage. A True Totem conjures a full copy of the +creature in question; the process tends to make the monster a loyal ally to +the summoner, but this loyalty is not guaranteed, nor is the survival of the +totem used in the summoning. + +[[[[[BTotem Creation] +In order to summon any creature, the Summoner needs a totem. Totems cannot be +found; they must be created through a special process which involves taking +the corpse of a creature (the summoner need not have been involved in the +death of the creature in question), and extracting certain essences from it. + +The summoner can create a totem using the 'm' command, and unless one is +working on a unique's corpse, must choose whether the resulting totem is a +Partial or True Totem. + +[[[[[BImportant Note] +Uniques are very willful creatures by definition, and thus have three special +rules about their summoning: +1. No partial totem can be made from a unique's corpse. +2. The totem in question is always destroyed. +3. The unique is twice as likely to be disloyal. diff --git a/lib/mods/theme/help/c_swordm.txt b/lib/mods/theme/help/c_swordm.txt new file mode 100644 index 00000000..a3b5ed05 --- /dev/null +++ b/lib/mods/theme/help/c_swordm.txt @@ -0,0 +1,52 @@ +~~~~~01|Swordmasters +~~~~~02|Classes|Swordmasters +#####R=== Swordmasters === + +#####GDescription +The Swordmaster is a Warrior who specialises in swords. + +The training is so intense and specific that Swordmasters gain huge bonuses +when fighting with their chosen weapon, dependent on their Sword-mastery skill. +In most other respects they perform about as well as a generic Warrior. + +#####GStarting Stat Modifiers +Strength +5 +Intelligence -2 +Wisdom -2 +Dexterity +2 +Constitution +2 +Charisma -1 +Hit Die +d9 +Spell Points +0% +Exp Penalty 0% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.900] + Weaponmastery 1.000 [0.950] + Sword-mastery 1.000 [0.700] + Axe-mastery 0.000 [0.300] + Hafted-mastery 0.000 [0.300] + Polearm-mastery 0.000 [0.300] + Archery 1.000 [0.600] + Antimagic 0.000 [0.550] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 1.000 [0.900] +Magic 1.000 [0.300] + Magic-Device 1.000 [1.150] +Spirituality 1.000 [0.400] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Extra Max Blow(1) 1 +Extra Max Blow(2) 1 +Spread-blows 25 + +#####GStarting Equipment +A Swordmaster begins the game with: + a Ring of Fear Resistance + a Chain Mail + a Broad Sword diff --git a/lib/mods/theme/help/c_symbia.txt b/lib/mods/theme/help/c_symbia.txt new file mode 100644 index 00000000..9bbd92fd --- /dev/null +++ b/lib/mods/theme/help/c_symbia.txt @@ -0,0 +1,68 @@ +|||||oy +~~~~~01|Symbiant +~~~~~02|Classes|Symbiant +#####R=== Symbiants === + +#####GDescription +Symbiants live in harmony with all of the monsters that do not move: +the Mushrooms, Molds, Floating Eyes, and such. They can hypnotise these +creatures and then form a symbiotic relationship. Using other symbiotic +powers, they can even use the magical abilities of their pets. + +Once hypnotised, the monster is placed onto the body, or "worn" in order to +initiate the symbiotic relationship. + +#####GStarting Stat Modifiers +Strength +1 +Intelligence -2 +Wisdom +1 +Dexterity +1 +Constitution 0 +Charisma +1 +Hit Die +d8 +Spell Points +0% +Exp Penalty 40% + +#####GStarting Skills +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.800] + Weaponmastery 1.000 [0.800] + Archery 1.000 [0.700] + Barehand-combat 1.000 [0.600] +Sneakiness 1.000 [0.800] + Stealth 1.000 [0.800] + Disarming 1.000 [0.700] +Magic 1.000 [0.700] + Magic-Device 1.000 [1.000] +Spirituality 1.000 [0.500] + Prayer 0.000 [0.500] + Music 0.000 [0.300] +Monster-lore 1.000 [1.100] + Corpse-preservation 1.000 [0.900] + Possession 0.000 [0.100] + Symbiosis 1.000 [0.800] + +#####GStarting Equipment +A Symbiant begins the game with: + a Dagger + a Scroll of Summon Never-Moving Pet + + +#####GSymbiosis +Symbiants rely on the partnerships they form, hypnotising creatures +and then "wearing" them: "I get by with a little help from my friends". +Depending on the monster, this does nothing except protect the player +slightly (the worn monster takes some of the damage the player would +otherwise) or grant some very powerful attacks and summons. +Their "spells" are used by the 'm' command; as their Symbiosis skill +increases, they automatically gain more powers. +For more detail about the specific powers, look here: *****m_symbio.txt*0[Symbiosis] +~~~~~03|Symbiant|Naming your symbiote +#####GNaming your symbiote +For those sentimental Symbiants who like to name your symbiotes, you +can use the Inscribe command '{'. Inscribe your hypnotized symbiote +with "#named Fido" (or whatever name you choose, but don't forget the +leading '#'), and it will be listed in your equipment as "a Red Mold +named Fido", and the game will refer to your symbiote by name ("Fido +is healed", for instance, rather than "Your Red mold is healed"). + diff --git a/lib/mods/theme/help/c_thaum.txt b/lib/mods/theme/help/c_thaum.txt new file mode 100644 index 00000000..653e84fa --- /dev/null +++ b/lib/mods/theme/help/c_thaum.txt @@ -0,0 +1,84 @@ +~~~~~01|Thaumaturgist +~~~~~02|Classes|Thaumaturgy +#####R=== Thaumaturgists === + +#####GDescription +A Thaumaturgist is a Mage that prefers chaos to order. As such, they tend to +learn random spells, and since attacking something creates more chaos than +anything else, every spell they learn is an attack spell. They have no need +for spell-books, as they harness the spells from within themselves. However, +they also have no ability to improve the power of a particular spell - once +learnt it will remain at the same strength for ever. Likewise, they also have +no ability to control what they learn, and some of their spells will cause +them damage (like darkness spells blinding them if they do not resist +darkness). + +#####GStarting Stat Modifiers +Strength -5 +Intelligence +3 +Wisdom +0 +Dexterity +1 +Constitution -2 +Charisma +1 +Hit Die +d0 +Spell Points +50% +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.200] + Weaponmastery 0.700 [0.400] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] +Magic 3.000 [0.950] + Magic-Device 1.000 [1.050] + Spell-power 0.000 [0.600] + Mana 0.000 [0.600] + Geomancy + Fire 0.000 [0.700] + Water 0.000 [0.700] + Air 0.000 [0.700] + Earth 0.000 [0.700] + Meta 0.000 [0.700] + Conveyance 0.000 [0.700] + Divination 0.000 [0.700] + Temporal 0.000 [0.700] + Mind 0.000 [0.700] + Nature 0.000 [0.700] + Necromancy 0.000 [0.700] + Runecraft 0.000 [0.700] + Thaumaturgy 1.000 [1.000] +Spirituality 1.000 [0.550] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +*A Thaumaturgist cannot learn the Geomancy skill, but it is shown in his skill +screen because the elemental schools are sub-skills of it. + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GStarting Equipment +A Thaumaturgist begins the game with: + a Book of Beginner Cantrips + a Dagger + + +#####GThaumaturgy +Thaumaturgists can wreak an amazing amount of destruction, and they don't +even need spellbooks to do it. As they gain skill they memorise new, +randomly generated attack spells. Note that they possess no guaranteed +utility or alteration magics, and can never alter themselves. +[[[[[BThaumaturgists just kill.] + +They use their magics through the 'm' key. They then select a general +group of spells, followed by a specific spell. Thaumaturgists can learn +more about a specific spell by browsing it; this is very useful for +choosing the perfect spell for the occasion. + +Thaumaturgy spells can take the form of a bolt, a beam, a ball (either +centred on the caster or targetable), an area (multiple balls in the +vicinity of the caster), or a spell that affects all monsters in line of sight. + +You can find a little more information here: *****m_thaum.txt*0[Thaumaturgy]. diff --git a/lib/mods/theme/help/c_trapper.txt b/lib/mods/theme/help/c_trapper.txt new file mode 100644 index 00000000..eb0badbe --- /dev/null +++ b/lib/mods/theme/help/c_trapper.txt @@ -0,0 +1,46 @@ +~~~~~01|Trapper +~~~~~02|Classes|Trapper +#####R=== Trappers === + +#####GDescription +A Pacifist is someone who prefers not to use violence to +achieve their ends. The trappers are not averse, however, +to destroying monsters via traps and using corpses they +find to create totems in order to summon aid. They +may also use spells provided by their deities. + +#####GStarting Stat Modifiers +Strength 0 +Intelligence +2 +Wisdom +2 +Dexterity +2 +Constitution 0 +Charisma +4 +Bonus Blows 0 +Hit Die 0 +Exp Penalty 0% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Sneakiness 0.000 [0.600] + Stealth 0.000 [0.600] + Disarming 1.000 [0.600] + Dodging 1.000 [0.700] +Magic 1.000 [0.600] + Spell-power 0.000 [0.500] + Nature 1.000 [1.000] +Spirituality 0.000 [0.700] + Prayer 0.000 [0.500] +Monster-lore 1.000 [0.900] + Summoning 1.000 [0.600] + +#####GStarting Equipment +A trapper begins the game with: + a catapult trap set + some iron shots + +#####GInnate Abilities: +#####BAbility Character level +Trapping 1 +Ammo creation 10 +Perfect casting 15
\ No newline at end of file diff --git a/lib/mods/theme/help/c_unbel.txt b/lib/mods/theme/help/c_unbel.txt new file mode 100644 index 00000000..feec5723 --- /dev/null +++ b/lib/mods/theme/help/c_unbel.txt @@ -0,0 +1,65 @@ +~~~~~01|Unbeliever +~~~~~02|Classes|Unbeliever +#####R=== Unbelievers === + +#####GDescription +The full opposite of Sorcerors, Unbelievers so strongly despise magic +that not only do they refuse to use magic spells, they refuse all +training in the use of magic items, which leaves them almost totally +incompetent when trying to use a magic item. + +#####GStarting Stat Modifiers +Strength +5 +Intelligence -2 +Wisdom -2 +Dexterity +2 +Constitution +2 +Charisma -1 +Hit Die +d9 +Spell Points +0% +Exp Penalty 0% + +#####GStarting Skills +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.800] + Weaponmastery 1.000 [0.850] + Sword-mastery 0.000 [0.400] + Axe-mastery 0.000 [0.400] + Hafted-mastery 0.000 [0.400] + Polearm-mastery 0.000 [0.400] + Archery 1.000 [0.600] + Antimagic 1.000 [0.650] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 1.000 [0.900] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Extra Max Blow(1) 1 +Extra Max Blow(2) 1 +Spread blows 25 + +#####GStarting Equipment +An Unbeliever begins the game with: + a Ring of Fear Resistance + a Dark Sword + a Chain Mail + +~~~~~03|Unbelievers|Antimagic +~~~~~04|Antimagic +~~~~~05|Skills|Antimagic powers +#####GAntimagic +Thought carries power. And since Unbelievers think that magic doesn't +exist, they can suppress its manifestation around them. +Their magic-inhibiting ability and the area of effect around them are +determined by the skill level in Antimagic. If they wield a Dark Sword, +the strength and radius of the magic disrupting field are increased further, +with best results if the blade is unenchanted. + +High levels of proficiency in Antimagic allow them also to stabilise the +space-time continuum, so preventing teleportation, to sense the magical +emanations coming from traps and to destroy these around them. +These abilities are accessed using the 'm' key. + + diff --git a/lib/mods/theme/help/c_wainrid.txt b/lib/mods/theme/help/c_wainrid.txt new file mode 100644 index 00000000..cf3c3d69 --- /dev/null +++ b/lib/mods/theme/help/c_wainrid.txt @@ -0,0 +1,49 @@ +~~~~~01|Wainrider +~~~~~02|Classes|Wainrider +#####R=== Wainriders === + +#####GDescription +Proud warriors riding majestic chariots. They are most effective +with short, thrusting blades. They are highly spiritual, but their +deity must be Melkor Bauglir, they do not have a choice when they +embark upon their adventure. They are better skilled in magic than +other warrior classes, although their magical ability is limited to +the Udun school. + +#####GStarting Stat Modifiers +Strength +5 +Intelligence -2 +Wisdom -2 +Dexterity +2 +Constitution +2 +Charisma -1 +Bonus Blows 3 +Hit Die +d9 +Exp Penalty 0% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.800] + Weaponmastery 1.000 [0.850] + Sword-mastery 0.000 [0.700] + Critical-hits 0.000 [0.500] + Archery 1.000 [0.600] +Sneakiness 1.000 [0.900] + Disarming 1.000 [0.900] +Magic 2.000 [0.800] + Magic-Device 1.000 [1.150] + Udun 0.000 [0.400] +Spirituality 1.000 [0.900] + Prayer 1.000 [0.700] +Monster-lore 0.000 [0.500] + +#####GStarting Equipment +A Wainrider begins the game with: + a spellbook of Curse + a potion of Corruption + a Shadow Blade + +#####GInnate Abilities: +#####BAbility Character level +Extra Max Blow(1) 1 +Extra Max Blow(2) 1
\ No newline at end of file diff --git a/lib/mods/theme/help/c_warper.txt b/lib/mods/theme/help/c_warper.txt new file mode 100644 index 00000000..55d16be5 --- /dev/null +++ b/lib/mods/theme/help/c_warper.txt @@ -0,0 +1,60 @@ +|||||oy +~~~~~01|Warper +~~~~~02|Classes|Warper +#####R=== Warpers === + +#####GDescription +A Warper is a type of mage that prefers to deal in magic that alters the +fabric of space and time. They specialise in the schools of *****m_convey.txt*0[Conveyance], +*****m_divin.txt*0[Divination] and *****m_tempo.txt*0[Temporal] magic. + +#####GStarting Stat Modifiers +Strength -5 +Intelligence +3 +Wisdom +0 +Dexterity +1 +Constitution -2 +Charisma +1 +Hit Die +d0 +Spell Points +50% +Exp Penalty 30% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 1.000 [0.200] + Weaponmastery 0.700 [0.400] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] +Magic 1.000 [0.900] + Magic-Device 1.000 [1.050] + Spell-power 1.000 [0.700] + Mana 1.000 [0.700] + Geomancy + Fire 0.000 [0.800] + Water 0.000 [0.800] + Air 0.000 [0.800] + Earth 0.000 [0.800] + Meta 0.000 [0.800] + Conveyance 0.000 [1.200] + Divination 0.000 [1.200] + Temporal 0.000 [1.200] + Mind 0.000 [0.700] + Nature 0.000 [0.800] + Necromancy 0.000 [0.700] + Runecraft 0.000 [0.700] + Thaumaturgy 0.000 [0.700] +Spirituality 1.000 [0.550] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +*A Warper cannot learn the Geomancy skill, but it is shown in his skill +screen because the elemental schools are sub-skills of it. + +#####GInnate Abilities: +#####BAbility Character level +Perfect casting 1 + +#####GStarting Equipment +A Warper begins the game with: + a Book of Beginner Cantrips + a Dagger diff --git a/lib/mods/theme/help/c_warrio.txt b/lib/mods/theme/help/c_warrio.txt new file mode 100644 index 00000000..942b34bb --- /dev/null +++ b/lib/mods/theme/help/c_warrio.txt @@ -0,0 +1,54 @@ +~~~~~01|Warrior +~~~~~02|Classes|Warrior +#####R=== Warriors === + +#####GDescription +A Warrior is a hack-and-slash character, who solves most of his problems +by cutting them to pieces, but will occasionally fall back on the help +of a magical device or a bow. + +A Warrior learns no magic, and can even suppress it like an Unbeliever through +the Antimagic skill. + +#####GStarting Stat Modifiers +Strength +5 +Intelligence -2 +Wisdom -2 +Dexterity +2 +Constitution +2 +Charisma -1 +Hit Die +d9 +Spell Points +0% +Exp Penalty 0% + +#####GStarting Skills: +#####BSkill Start Level Skill Point Gains +Combat 2.000 [0.800] + Weaponmastery 1.000 [0.850] + Sword-mastery 0.000 [0.400] + Axe-mastery 0.000 [0.400] + Hafted-mastery 0.000 [0.400] + Polearm-mastery 0.000 [0.400] + Archery 1.000 [0.600] + Antimagic 0.000 [0.550] +Sneakiness 1.000 [0.900] + Stealth 0.000 [0.400] + Disarming 1.000 [0.900] +Magic 1.000 [0.300] + Magic-Device 1.000 [1.150] +Spirituality 1.000 [0.400] + Prayer 0.000 [0.500] +Monster-lore 0.000 [0.500] + +#####GInnate Abilities: +#####BAbility Character level +Extra Max Blow(1) 1 +Extra Max Blow(2) 1 +Spread blows 25 + +#####GStarting Equipment +A Warrior begins the game with: + a Ring of Fear Resistance + a Broad Sword + a Chain Mail + diff --git a/lib/mods/theme/help/command.txt b/lib/mods/theme/help/command.txt new file mode 100644 index 00000000..6616c252 --- /dev/null +++ b/lib/mods/theme/help/command.txt @@ -0,0 +1,1251 @@ +|||||oy +~~~~~99|Commands +#####R=== List of Commands === + + + Angband commands are entered as an "underlying command" (a single key) +plus a variety of optional or required arguments. You may choose how the +"keyboard keys" are mapped to the "underlying commands" by choosing one of +two standard "keysets", the "original" keyset or the "roguelike" keyset. + + The original keyset is very similar to the "underlying" command set, +with a few additions (such as the ability to use the numeric "directions" to +"walk" or the "5" key to "stay still"). The roguelike keyset provides similar +additions, and also allows the use of the h/j/k/l/y/u/b/n keys to "walk" (or, +in combination with the shift or control keys, to run or tunnel), which thus +requires a variety of key mappings to allow access to the underlying commands +used for walking/running/tunneling. In particular, the "roguelike" keyset +includes many more "capital" and "control" keys, as shown below. + + Note that any keys that are not required for access to the underlying +command set may be used by the user as "command macro" triggers (see below). +You may always specify any "underlying command" directly by pressing backslash +("\") plus the "underlying command" key. This is normally only used in "macro" +definitions. [[[[[BYou may often enter "control-keys" as a caret ("^") plus the key] +(so "^" + "p" often yields "^P"). + + Some commands allow an optional "repeat count", which allows you to tell +the game that you wish to do the command multiple times, unless you press a +key or are otherwise disturbed. To enter a "repeat count", type '0', followed +by the numerical count, followed by the command. You must type "space" before +entering certain commands. Skipping the numerical count yields a count of 99. +An option allows certain commands (open, disarm, tunnel, etc) to auto-repeat. + + Some commands will prompt for extra information, such as a direction, an +inventory or equipment item, a spell, a textual inscription, the symbol of a +monster race, a sub-command, a verification, an amount of time, a quantity, +a file name, or various other things. Normally you can hit return to choose +the "default" response, or escape to cancel the command entirely. + + Some commands will prompt for a spell or an inventory item. Pressing +space (or '*') will give you a list of choices. Pressing "-" (minus) selects +the item on the floor. Pressing a lowercase letter selects the given item. +Pressing a capital letter selects the given item after verification. Pressing +a numeric digit '#' selects the first item (if any) whose inscription contains +"@#" or "@x#", where "x" is the current "underlying command". You may only +specify items which are "legal" for the command. Whenever an item inscription +contains "!*" or "!x" (with "x" as above) you must verify its selection. + + In ToME, there are items which occasionally teleport you away, asking +for permission first. The recurring "Teleport (y/n)?" can be annoying, and +this behavior can be eliminated by inscribing the object which causes the +teleportation with "." (or any inscription containing the character "."). +With this inscription, the object will no longer teleport you around nor +keep asking you. If you want to restore the teleport ability to the object, +just remove the "." from its inscription. Note that cursed items which +teleport you are unaffected by the inscription. + + Some commands will prompt for a direction. You may enter a "compass" +direction using any of the "direction keys" shown below. Sometimes, you may +specify that you wish to use the current "target", by pressing "t" or "5", or +that you wish to select a new target, by pressing "*" (see "Target" below). +~~~~~95 +#####G Original Keyset Directions Roguelike Keyset Directions + + 7 8 9 y k u + 4 6 h l + 1 2 3 b j n + + Each of the standard keysets provides some short-cuts over the "underlying +commands". For example, both keysets allow you to "walk" by simply pressing +an "original" direction key (or a "roguelike" direction key if you are using +the roguelike keyset), instead of using the "walk" command plus a direction. +[[[[[BThe roguelike keyset allows you to "run" or "tunnel" by simply holding the] +[[[[[Bshift or control modifier key down while pressing a "roguelike" direction key,] +[[[[[Binstead of using the "run" or "tunnel" command plus a direction.] Both keysets +allow the use of the "5" key to "stand still", which is most convenient when +using the original keyset. + + Note that on many systems, it is possible to define "macros" (or "command +macros") to various keys, or key combinations, so that it is often possible to +make macros which, for example, allow the use of the shift or control modifier +keys, plus a numeric keypad key, to specify the "run" or "tunnel" command, with +the given direction, regardless of any keymap definitions, by using the fact +that you can always, for example, use "\" + "." + "6", to specify "run east". +~~~~~100|Commands|Original keyset +#####R=== Original Keyset Command Summary (4.2.x) === + + *****command.txt*1[a Aim a wand] *****command.txt*2[A Activate an artifact] + *****command.txt*3[b Browse a book] *****command.txt*4[B Bash a door] + *****command.txt*5[c Close a door] *****command.txt*6[C Character description] + *****command.txt*7[d Drop an item] *****command.txt*8[D Disarm a trap] + *****command.txt*9[e Equipment list] *****command.txt*10[E Eat some food] + *****command.txt*11[f Fire (shoot) an item] *****command.txt*12[F Fuel your lantern/torch] + *****command.txt*13[g Stay still (flip pickup)] *****command.txt*14[G Gain new skills] + *****command.txt*15[h Hack up a corpse] *****command.txt*16[H Drink from a fountain] + *****command.txt*17[i Inventory list] *****command.txt*18[I Inspect (closely examine) an item] + *****command.txt*19[j Jam a door] J (unused) + *****command.txt*20[k Destroy an item] *****command.txt*21[K Cure meat] + *****command.txt*22[l Look around] *****command.txt*23[L Look around dungeon by sector] + *****command.txt*24[m Cast a spell / use mental power] *****command.txt*25[M Full dungeon map] + *****command.txt*85[n Repeat last command] *****command.txt*91[N Abilities Screen] + *****command.txt*26[o Open a door or chest] *****command.txt*27[O Sacrifice at an altar] + *****command.txt*28[p Pray to your god (if any)] *****command.txt*29[P Pet commands] + *****command.txt*30[q Quaff a potion] *****command.txt*31[Q Quit (commit suicide)] + *****command.txt*32[r Read a scroll] *****command.txt*33[R Rest for a period] + *****command.txt*34[s Search for traps/doors] *****command.txt*35[S Toggle search mode] + *****command.txt*36[t Take off equipment] *****command.txt*37[T Dig a tunnel] + *****command.txt*38[u Use a staff] *****command.txt*39[U Use bonus power (if any)] + *****command.txt*40[v Throw an item] *****command.txt*41[V Version Info] + *****command.txt*42[w Wear/wield equipment] W (unused) + *****command.txt*43[x Engrave the floor] X (unused) + *****command.txt*44[y Give item to monster] *****command.txt*96[Y Chat with a monster] + *****command.txt*45[z Zap a rod] *****command.txt*46[Z Steal] + *****command.txt*47[! Interact with system] *****debug.txt*101[^A (special - debug command)] + *****command.txt*49[@ Interact with macros] ^B (unused) + *****command.txt*89[# Begin extended command] ^C (special - break) + *****command.txt*97[$ Record macros] ^D (unused) + *****command.txt*51[% Interact with visuals] *****command.txt*52[^E Toggle choice window] + ^ (special - control key) *****command.txt*53[^F Repeat level feeling] + *****command.txt*54[& Interact with colors] ^G (unused) + *****command.txt*55[* Target monster or location] ^H (unused) + ( (unused) ^I (special - tab) + ) (unused) ^J (special - linefeed) + *****command.txt*58[{ Inscribe an object] ^K (unused) + *****command.txt*59[} Uninscribe an object] ^L (unused) + [ (unused) ^M (special - return) + ] (unused) ^N (unused) + *****command.txt*60[- Walk (flip pickup)] ^O (unused) + *****command.txt*61[_ Re-Enter store] *****command.txt*62[^P Show previous messages] + *****command.txt*63[+ Alter grid] *****command.txt*64[^Q Quit to next midi song] + *****command.txt*65[= Set options] *****command.txt*66[^R Redraw the screen] + *****command.txt*67[; Walk (with pickup)] *****command.txt*68[^S Save and don't quit] + *****command.txt*69[: Take notes] *****command.txt*70[^T Time of the day] + ' (unused) ^U (unused) + *****command.txt*71[" Enter a user pref command] ^V (unused) + *****command.txt*72[, Stay still (with pickup)] ^W (special - wizard mode) + *****command.txt*74[< Go up staircase] *****command.txt*75[^X Save and quit] + *****command.txt*76[. Run] ^Y (unused) + *****command.txt*77[> Go down staircase] ^Z (special - borg command) + *****command.txt*79[\ (special - bypass keymap)] *****command.txt*80[| Do cmovies] + *****command.txt*81[` (special - escape)] *****command.txt*82[~ Display current knowledge] + *****command.txt*83[/ Identify symbol] *****command.txt*84[? Help] + *****command.txt*98[^\] Take an html screenshot] + + +~~~~~101|Commands|Roguelike keyset +#####R=== Roguelike Keyset Command Summary (4.2.x) === + + *****command.txt*45[a Zap a rod (Activate)] *****command.txt*2[A Activate an artifact] + *****command.txt*95[b (walk - south west)] *****command.txt*95[B (run - south west)] + *****command.txt*5[c Close a door] *****command.txt*6[C Character description] + *****command.txt*7[d Drop an item] *****command.txt*8[D Disarm a trap or chest] + *****command.txt*9[e Equipment list] *****command.txt*10[E Eat some food] + *****command.txt*4[f Bash a door (force)] *****command.txt*12[F Fuel your lantern/torch] + *****command.txt*13[g Stay still (flip pickup)] *****command.txt*14[G Gain new skills] + *****command.txt*95[h (walk - west)] *****command.txt*95[H (run - west)] + *****command.txt*17[i Inventory list] *****command.txt*18[I Observe an item] + *****command.txt*95[j (walk - south)] *****command.txt*95[J (run - south)] + *****command.txt*95[k (walk - north)] *****command.txt*95[K (run - north)] + *****command.txt*95[l (walk - east)] *****command.txt*95[L (run - east)] + *****command.txt*24[m Spell casting / mental power] *****command.txt*25[M Full dungeon map] + *****command.txt*95[n (walk - south east)] *****command.txt*95[N (run - south east)] + *****command.txt*26[o Open a door or chest] *****command.txt*39[O Use bonus power (if any)] + *****command.txt*28[p Pray to your god (if any)] *****command.txt*3[P Browse a book] + *****command.txt*30[q Quaff a potion] *****command.txt*31[Q Quit (commit suicide)] + *****command.txt*32[r Read a scroll] *****command.txt*33[R Rest for a period] + *****command.txt*34[s Search for traps/doors] *****command.txt*97[S Record macros] + *****command.txt*11[t Fire an item] *****command.txt*36[T Take off equipment] + *****command.txt*95[u (walk - north east)] *****command.txt*95[U (run - north east)] + *****command.txt*40[v Throw an item] *****command.txt*16[V Drink from a fountain] + *****command.txt*42[w Wear/wield equipment] *****command.txt*23[W Locate player on map (Where)] + *****command.txt*22[x Look around] *****command.txt*29[X Pet commands] + *****command.txt*95[y (walk - north west)] *****command.txt*95[Y (run - north west)] + *****command.txt*1[z Aim a wand (Zap)] *****command.txt*38[Z Use a staff (Zap)] + *****command.txt*47[! Interact with system] ^A (special - debug command) + *****command.txt*49[@ Interact with macros] *****command.txt*95[^B (tunnel - south west)] + *****command.txt*35[# Toggle search mode] ^C (special - break) + *****command.txt*15[$ Hack up a corpse] *****command.txt*20[^D Destroy item] + *****command.txt*51[% Interact with visuals] *****command.txt*52[^E Toggle choice window] + ^ (special - control key) *****command.txt*53[^F Repeat level feeling] + *****command.txt*54[& Interact with colors] *****command.txt*27[^G Sacrifice at an altar] + *****command.txt*55[* Target monster or location] *****command.txt*95[^H (tunnel - west)] + *****command.txt*96[( Chat] ^I (special - tab) + *****command.txt*89[) Begin extended command] *****command.txt*95[^J (tunnel - south)] + *****command.txt*58[{ Inscribe an object] *****command.txt*95[^K (tunnel - north)] + *****command.txt*59[} Uninscribe an object] *****command.txt*95[^L (tunnel - east)] + [*****command.txt*46[ Steal] *****command.txt*95[^M (tunnel - south)] + ]*****command.txt*43[ Engrave the floor] *****command.txt*95[^N (tunnel - south east)] + *****command.txt*60[- Walk (flip pickup)] *****command.txt*21[^O Cure meat] + *****command.txt*61[_ Enter store] *****command.txt*62[^P Show previous messages] + *****command.txt*63[+ Alter grid] *****command.txt*64[^Q Quit to next midi song] + *****command.txt*65[= Set options] *****command.txt*66[^R Redraw the screen] + *****command.txt*67[; Walk (with pickup)] *****command.txt*68[^S Save and don't quit] + *****command.txt*69[: Take notes] *****command.txt*37[^T Dig a Tunnel] + *****command.txt*44[' Give object to monster] *****command.txt*95[^U (tunnel - north east)] + *****command.txt*71[" Enter a user pref command] ^V (unused) + *****command.txt*76[, Run] ^W (special - wizard mode) + *****command.txt*74[< Go up staircase] *****command.txt*75[^X Save and quit] + *****command.txt*72[. Stay still (with pickup)] *****command.txt*95[^Y (tunnel - north west)] + *****command.txt*77[> Go down staircase] ^Z (special - borg command) + *****command.txt*79[\ (special - bypass keymap)] *****command.txt*80[| Do cmovies] + *****command.txt*81[` (special - escape)] *****command.txt*82[~ Display current knowledge] + *****command.txt*83[/ Identify symbol] *****command.txt*84[? Help] + +~~~~~102|Commands|Special keys +#####R=== Special Keys === + + Certain special keys may be intercepted by the operating system or +the host machine, causing unexpected results. In general, these special keys +are control keys, and often, you can disable their special effects. + + If you are playing on a UNIX or similar system, then Ctrl-C will +interrupt ToME. The second and third interrupt will induce a warning +bell, and the fourth will induce both a warning bell and a special message, +since the fifth will quit the game, after killing your character. Also, +Ctrl-Z will suspend the game, and return you to the original command shell, +until you resume the game with the "fg" command. There is now a compilation +option to force the game to prevent the "double ctrl-z escape death trick". +The Ctrl-\ and Ctrl-D and Ctrl-S keys should not be intercepted. + + It is often possible to specify "control-keys" without actually +pressing the control key, by typing a caret ("^") followed by the key. +This is useful for specifying control-key commands which might be caught +by the operating system as explained above. +~~~~~79 + Pressing [[[[[Gbackslash ("\\")] before a command will bypass all keymaps, +and the next keypress will be interpreted as an "underlying command" key, +unless it is a caret ("^"), in which case the keypress after that will be +turned into a control-key and interpreted as a command in the underlying +ToME keyset. The backslash key is useful for creating macro actions +which are not affected by any keymap definitions that may be in force, for +example, the sequence "\" + "." + "6" will always mean "run east", even if +the "." key has been mapped to a different underlying command. + + The "0" and "^" and "\" keys all have special meaning when entered +at the command prompt, and there is no "useful" way to specify any of them +as an "underlying command", which is okay, since they would have no effect. +~~~~~81 + For many input requests or queries, the [[[[[Gspecial character ESCAPE] +will abort the command. The "[y/n]" prompts may be answered with "y" or +"n", or escape. The "-more-" message prompts may be cleared (after reading +the displayed message) by pressing ESCAPE, SPACE, RETURN, LINEFEED, or by +any keypress, if the "quick_messages" option is turned on. +~~~~~103|Commands|Command counts +~~~~~104|Commands|Repeating a command +#####R=== Command Counts === + + Some commands can be executed a fixed number of times by preceding +them with a count. Counted commands will execute until the count expires, +until you type any character, or until something significant happens, such +as being attacked. Thus, a counted command doesn't work to attack another +creature. While the command is being repeated, the number of times left +to be repeated will flash by on the line at the bottom of the screen. + + [[[[[BTo give a count to a command, type 0, the repeat count, and then] +[[[[[Bthe command.] If you want to give a movement command and you are using the +original command set (where the movement commands are digits), press space +after the count and you will be prompted for the command. + + Counted commands are very useful for searching or tunneling, as +they automatically terminate on success, or if you are attacked. You may +also terminate any counted command (or resting or running), by typing any +character. This character is ignored, but it is safest to use a SPACE or +ESCAPE which are always ignored as commands in case you type the command +just after the count expires. + + You can tell ToME to automatically use a repeat count of 99 +with commands you normally want to repeat (open, disarm, tunnel, bash, +alter, etc) by setting the "always_repeat" option. + + +#####R=== Selection of Objects === + + Many commands will also prompt for a particular object to be used. +For example, the command to read a scroll will ask you which of the +scrolls that you are carrying that you wish to read. In such cases, the +selection is made by typing a letter of the alphabet. The prompt will +indicate the possible letters, and will also allow you to type the key +"*", which causes all of the available options to be described. The list +of choices will also be shown in the Choice window, if you are using a +windows environment and windows are turned on. Often you will be able to +press "/" to select an object from your equipment instead of your +inventory. Pressing space once will have the same effect as "*", and +the second time will cancel the command and run the "i" or "e" command. + + [[[[[BThe particular object may be selected by an upper case or a lower] +[[[[[Bcase letter. If lower case is used, the selection takes place] +[[[[[Bimmediately. If upper case is used, then the particular option is] +[[[[[Bdescribed, and you are given the option of confirming or retracting that] +[[[[[Bchoice.] Upper case selection is thus safer, but requires an extra key +stroke. Also see the "!*" and "!x" inscriptions, below. + + For many commands, [[[[[Byou can also use "-" to select an object on the] +[[[[[Bfloor where you are standing.] This lets you read scrolls or quaff +potions, for example, off the dungeon floor without picking them up. +~~~~~90 + If you enter a number between 0 and 9, the first item engraved +with "@#" where "#" is the number you entered will be selected. For example, +if you have a shovel engraved with "@0" and you type "w" (for wield) and +then 0, you will wield the shovel. This is very useful for macros (see +below), since you can use this to select an object regardless of its +location in your pack. Multiple numbers can be engraved on the same object; for +example, if a sword is engraved with @1@0, then either "w1" or "w0" will +wield it. Normally, you inscribe "@1@0" on your primary weapon, and +"@2@0" on your secondary weapon. [[[[[BNote that an inscription containing] +[[[[[B"@x#" will act like "@#" but only when the current "ToME command"] +[[[[[Bis "x".] Thus you can put "@z4" on a rod and "@u4" on a staff, and then +use both "z4" and "u4" as desired. + + Note that any object containing "!x" in its inscription, where +"x" is the current "ToME command" (or containing "!*" ever) will induce +"verification" whenever that object is "selected". Thus, inscribing, say, +"!f!k!d" on an object will greatly reduce the odds of you "losing" it by +accident, and [[[[[Binscribing "!*" on an object] will allow you to be very paranoid +about the object. Note that "selling" and "dropping" both use the "d" command. + +~~~~~105|Pref files +#####R=== User Pref Files === + + ToME allows you to change various aspects of the game to suit +your tastes. You may define keymaps (changing the way ToME maps your +keypresses to underlying commands), create macros (allowing you to map a +single keypress to a series of keypresses), modify the visuals (allowing +you to change the appearance of monsters, objects, or terrain features), +change the colors (allowing you to make a given color brighter, darker, +or even completely different), or set options (turning them off or on). + + ToME stores your preferences in files called "user pref files", +which contain comments and "user pref commands", which are simple strings +describing one aspect of the system about which the user has a preference. +There are many ways to load a user pref file, and in fact, some of these +files are automatically loaded for you by the game. All of the files are +kept in the "lib/user/" directory, though you may have to use one of the +command line arguments to redirect this directory, especially on multiuser +systems. You may also enter single user pref commands directly, using the +special "Enter a user pref command" command, activated by "double quote". +You may have to use the "redraw" command (^R) after changing certain of +the aspects of the game, to allow ToME to adapt to your changes. + + When the game starts up, after you have loaded an old character, +or created a new character, some user pref files are loaded automatically. +First, the "pref.prf" file is loaded. This file contains some user pref +commands which will work on all platforms. Then one of "font-xxx.prf" +(for normal usage) or "graf-xxx.prf" (for bitmap usage) is loaded. These +files contain attr/char changes to allow the monsters, objects, and/or +terrain features to look "better" on your system. Then the "pref-xxx.prf" +file is loaded. This file contains pre-defined system specific stuff +(macros, color definitions, etc). Then, the "user-xxx.prf" file is loaded. +This file contains user-defined system specific stuff. The "user-xxx.prf" +file is used as the "default" user pref file in many places. The "xxx" is +the "system suffix" for your system, taken from the "main-xxx.c" file which +was used to generate your executable. Finally, the "Race.prf", "Class.prf", +and "Name.prf" files are loaded, where "Race", "Class", and "Name" are +replaced by the actual race, class, and name of the current character. + + Several commands allow you to both load existing user pref files, +create new user pref files, append information to existing user pref files, +and/or interact with various of the user preferences in a more intuitive +way than the user pref commands allow. The commands include "Interact with +macros" (@), "Interact with visuals" (%), and "Interact with colors" (&), +described below. +~~~~~106|Pref files|Macros +#####G--- User Pref Files (Macros) --- + + The "Interact with macros" command allows you to define or remove +"macros", which are mappings from a single logical keypress to a sequence +of keypresses, allowing you to use special keys on the keyboard, such as +function keys or keypad keys, possibly in conjunction with modifier keys, +to "automate" repetitive multi-keypress commands that you use a lot. + + Since macros represent keypress sequences, and not all keypresses +have a printable representation, macro triggers and actions must often be +"encoded" into a human readable form. This is done using several types +of encoding, including "\xHH" for character number HH in hexidecimal, "\e" +for the "escape" code, "\n" for the "newline" code, "\r" for the "return" +code, "\s" for the "space" code, "\\" for backslash, "\^" for caret, and +"^X" for the code for any "control" key "ctrl-X". Note that the "action" +of a macro will not be checked against other macro triggers (unless the +macro action contains a "control-backslash"), so you cannot make infinite +loops. You may specify extremely long macros, but you are limited in +length by the underlying input mechanisms, which in general limit you +to about 1024 keys in both triggers and actions. + + The special "\" command (which must be encoded in macros as "\\") +is very useful in macros, since it bypasses all keymaps and allows the next +keystroke to be considered a command in the underlying ToME command set. +For example, a macro which maps Shift-KP6 to "\" + "." + "6" will induce +the "run east" behavior, regardless of what keyset the user has chosen, and +regardless of what keymaps have been defined. + + Macros can be specified in user pref files as a pair of lines, one +of the form "A:<str>", which defines the encoded macro action, and one of +the form "P:<str>", which defines the encoded macro trigger. + + A [[[[[Bcommon example of a macro] to cast the first spell in your first spell +book at the nearest monster would be: \e\e\em1a*t where \e is an escape (to make +sure you are not still within another command), m1 selects the spell book that +is inscribed ({) with @m1, a selects the first spell in that book, and *t targets +the nearest monster. + + More detailed information about specific macros can be found in +*****macrofaq.txt*0[macrofaq.txt], originally written by Jim Lyon (jplyon@attglobal.net), +modified for ToME with Jim's permission by Dawnmist +(angband@dawnmist.8m.com). +~~~~~107|Pref files|Keymaps +#####G--- User Pref Files (Keymaps) --- + + The "Interact with macros" command also allows you to define +"keymaps", which are vaguely related to macros. A keymap maps a single +keypress to a series of keypresses, which bypass both other keymaps and +any macros. ToME uses keymaps to map the original and the roguelike +keysets to the underlying command set, and allows the user to modify or +add keymaps of their own. Note that all keymap actions must be specified +using underlying commands, not keypresses from the original or roguelike +keysets. The original keyset is almost identical to the underlying keyset, +except that "numbers" are mapped to ";" plus a direction, "5" is mapped to +",", and a few control-keys are mapped to various things. See "command.txt" +for the full set of underlying commands. Some uses for keymaps include the +ability to "disable" a command by mapping it to "\x00", + + Keymaps can be specified in user pref files as line of the form +"M:<T> <key> <str>", where <T> is the keyset (0/1 for original/roguelike), +<key> is the encoded trigger key, and <str> is the encoded keymap action. +~~~~~108|Pref files|Visuals +#####G--- User Pref Files (Visuals) --- + + You can use the "Interact with visuals" command to change various +visual information, currently including the choice of what attr/char values +are used to represent various monsters, objects, or terrain features. Note +that in combination appropriate support in "main-xxx.c", and with the use of +the "use_graphics" flag, you may be able to specify that "graphic bitmaps" +should be used instead of normal "colored characters" for various things. + + When interactively modifying the attr/char values for monsters, +objects, or terrain features, pressing "n" or "N" will change which entry +you are changing, pressing "a" or "A" will rotate through the available +attr values, and pressing "c" or "C" will rotate though the available char +values. Note that attr/char values with the "high bit" set may induce the +display of special "graphic" pictures if the "use_graphics" flag is set, +and your system supports the "use_graphics" flag. + + Note that this command can be abused in various ways, and if you +must do so, remember that you are only cheating yourself. + + Keymaps can be specified in user pref files as line of the form +"R:<N>:<A>/<C>" or "K:<N>:<A>/<C>" or "F:<N>:<A>/<C>" or "U:<N>:<A>/<C>". +~~~~~109|Pref files|Colors +#####G--- User Pref Files (Colors) --- + + The "Interact with colors" command allows you to change the actual +internal values used to display various colors. This command may or may +not have any effect on your machine. Advanced machines may allow you to +change the actual RGB values used to represent each of the 16 colors used +by ToME, and perhaps even allow you to define new colors which are not +currently used by ToME. + + Colors can be specified in user pref files as line of the form +"V:<N>:<V>:<R>:<G>:<B>". +~~~~~110|Pref files|Options +#####G--- User Pref Files (Options) --- + + The "Interact with options" command allows you to turn options +on or off. You may turn options off or on using the user pref commands +of the form "X:<option>" or "Y:<option>" respectively. + +~~~~~111|Commands|Command descriptions +#####R=== Command Descriptions === + + The following command descriptions are listed as the command name +plus the "underlying command" key. This is followed by the command name +and "roguelike" keyset key, if different from the underlying command key. +Then comes a brief description of the command, including information about +alternative methods of specifying the command in each keyset, when needed. +Several commands (tunnel, disarm, bash, open) are repeated 99 times if the +"always_repeat" option is set and no repeat count is given. Some commands +use the "repeat count" to automatically repeat the command several times, +while others use the "repeat count" as an "argument", for example, commands +which need a "quantity" will use the "repeat count" instead of asking for +a quantity, allowing the use of "0d" for "drop all". Commands which ask +for a quantity will convert any "letters" into the maximal legal value. +~~~~~112|Commands|Inventory +#####R--- Inventory Commands --- +~~~~~17 +[[[[[GInventory list (i)] + Displays a list of objects being carried but not equipped. You + can carry up to 23 different items, not counting those in your + equipment. Often, many identical objects can be "stacked" into + a "pile" which will count as a single item. This is always + true of things like potions, scrolls, and food, but you may have + to set options to allow wands, staves, and other such objects to + stack. Each object has a weight, and if you carry more objects + than your strength permits, you will begin to slow down. +~~~~~9 +[[[[[GEquipment list (e)] + Use this command to display a list of the objects currently being + used by your character. The number and type of available slots for + equipment may vary. A human for example has 15 slots for equipment, + each corresponding to a different location on the body, and each of + which may contain only a single object at a time, and each of which + may only contain objects of the proper "type". + If the option "show_labels" is set, the slots are labelled as follows: + Wielding (weapon), Shooting (missile launcher or instruments), + On finger (ring), Around neck (amulet), Light source (light source), + On body (armor), About body (cloak), On arm (shield), On head (helmet), + On hands (gloves), On feet (boots), Carrying (symbiote), Quiver (ammo), + Using (tool). You must be using an object to receive any of its special + powers. +~~~~~7 +[[[[[GDrop an item (d)] + This command drops an item from your inventory or equipment onto the + dungeon floor. If the place you are standing on already has objects + in it, ToME will attempt to drop the item onto an adjacent space. + A floor spot can hold more than one object, but there is still the + possibility that if the floor is too full and you attempt to drop + something, it may disappear and be destroyed. If the selected pile + contains multiple items, you may specify a quantity. +~~~~~20 +[[[[[GDestroy an item (k) or Destroy an item (^D)] + This destroys an item in your inventory or on the dungeon floor. + If the selected pile contains multiple objects, you may specify + a quantity. You must always verify this command, unless the item + is cursed or worthless and the option "auto_destroy" is set. +~~~~~42 +[[[[[GWear/Wield equipment (w)] + To wear or wield an object in your inventory, use this command. + Since only one object can be in each slot at a time, if you wear + or wield an item into a slot which is already occupied, the old + item will be first be taken off, and may in fact be dropped if + there is no room for it in your inventory. +~~~~~36 +[[[[[GTake off equipment (t) or Take off equipment (T)] + Use this command to take off a piece of equipment and return it + to your inventory. Occasionally, you will run into a cursed item + which cannot be removed. These items normally penalise you in some + way and cannot be taken off until the curse is removed. If there + is no room in your inventory for the item, your pack will overflow + and you will drop the item after taking it off. +~~~~~113|Commands|Movement +#####R--- Movement Commands --- +~~~~~67 +[[[[[GWalk (with pickup) (;)] + Moves one step in the given direction. The square you are moving + into must not be blocked by walls or doors. You will pick up any + items in the destination grid if the "always_pickup" option is set, + or if the "query_pickup" option is set and you respond correctly. + This command can take a count and requires a direction. You may + also use the "original" direction keys (both keysets) or the + "roguelike" direction keys (roguelike keyset) to walk in a + direction. +~~~~~60 +[[[[[GWalk (flip pickup) (-)] + This is just like normal move, except that the "Pick things up" + option is inverted. In other words, if you normally pick up + anything you encounter (the default), you will not pick things up + when using this command. If you normally do not pick things up, + you will when using this command. This command can take a count + and requires a direction. +~~~~~76 +[[[[[GRun (.) or Run (,)] + This command will move in the given direction, following any bends + in the corridor, until you either have to make a "choice" between + two directions or you are disturbed. You can configure what will + disturb you by setting the disturbance options. Run requires a + direction. You may also use shift plus the "roguelike" direction + keys (roguelike keyset), or shift plus the "original" direction keys + on the keypad (both keysets, some machines) to run in a direction. +~~~~~74 +[[[[[GGo up staircase (<)] + Climbs up an up staircase you are standing on. There is always at + least one staircase going up on every level (this doesn't mean it's + easy to find) except for the surface, where '<' will bring up the + wilderness map. Going up a staircase will take you to a new dungeon + level unless you are at the first level of the dungeon, in which case + you will return to the surface. Note that whenever you leave a dungeon + level, you will never find it again, unless the level contains a dungeon + town. This means that for all intents and purposes, any objects on that + level are destroyed. This includes unknown artifacts unless the "Create + characters in preserve mode" option was set when your character was + created, in which case the artifacts may show up again later. +~~~~~77 +[[[[[GGo down staircase (>)] + Descends a down staircase you are standing on. There are always + at least two staircases going down on each level, except for the + last level of a dungeon, and some "quest" levels, which have none until + the quest monsters are killed. Going down a staircase will take you + to a new dungeon level. See "Go Up Staircase" for more info. + + This command is also used to enter Void Jumpgates, and to zoom in from + the wilderness map. +~~~~~114|Commands|Resting +#####R--- Resting Commands --- +~~~~~72 +[[[[[GStay still (with pickup) (,) or Stay still (with pickup) (.)] + Stays in the same square for one move. If you normally pick up + objects you encounter, you will pick up whatever you are standing + on. This command can take a count. You may also use the "5" key + (both keysets). +~~~~~13 +[[[[[GStay still (flip pickup) (g)] + Stays in the same square for one move. If you normally pick up + objects you encounter, you will not pick up whatever you are + standing on. If you normally do not pick up objects, you will + pick up what you are standing on. This command is normally only + used when the "always_pickup" option is false. This command can + take a count. +~~~~~33 +[[[[[GRest (R)] + Resting is better for you than repeatedly staying still, and can + be told to automatically stop after a certain amount of time, or + when various conditions are met. In any case, you always wake up + when anything disturbing happens, or when you press any key. To + rest, enter the Rest command, followed by the number of turns you + want to rest, or "*" to rest until your hit points and mana are + restored, or "&" to rest until you are fully "healed". This command + can take a count, which is used for the number of turns to rest. +~~~~~61 +[[[[[GEnter store (_)] + When standing on the door of a store, this command allows the character + to enter the store again. +~~~~~115|Commands|Searching +#####R--- Searching Commands --- +~~~~~34 +[[[[[GSearch (s)] + This command can be used to locate hidden traps and secret doors + in the spaces adjacent to the player. More than a single turn of + searching will be required in most cases. You should always + search a chest before trying to open it, since they are generally + trapped. This command can take a count, which is useful if you + are fairly sure of finding something eventually, since the command + stops as soon as anything is found. This command can take a count. +~~~~~35 +[[[[[GToggle search mode (S) or Toggle search mode (#)] + This command will take you into and out of search mode. When + first pressed, the message "Searching" will appear at the bottom + of the screen. You are now taking two turns for each command, one + for the command and one turn to search. This means that you are + taking twice the time to move around the dungeon, and therefore + twice the food. Search mode will automatically turn off if you + are disturbed. You may also turn off search mode by entering the + Search Mode command again. +~~~~~116|Commands|Alteration commands +~~~~~117|Commands|Terrain interaction +#####R--- Alter Commands --- +~~~~~37 +[[[[[GTunnel (T) or Tunnel (^T)] + Tunnelling or mining is a very useful art. There are many kinds of + rock, with varying hardness, including permanent rock (permanent), + granite (very hard), quartz veins (hard), magma veins (soft), and + rubble (very soft). Quartz and Magma veins may be displayed in a + special way, and may sometimes contain treasure, in which case they + will be displayed in a different way. Rubble sometimes covers an + object. It is only possible to tunnel if you are wielding a digging + tool such as a shovel or a pick. Tunnelling ability increases with + strength and tool weight. This command can take a count, requires a + direction, and is affected by the "always_repeat" option. +~~~~~26 +[[[[[GOpen a door or chest (o)] + To open an object such as a door or chest, you must use this + command. If the object is locked, you will attempt to pick the + lock based on your disarming ability. If you open a trapped chest + without disarming the traps first, the trap will be set off. Some + doors will be jammed shut and may have to be forced open. You may + need several tries to open a door or chest. Open can take a count, + requires a direction, and is affected by the "always_repeat" option. +~~~~~5 +[[[[[GClose a door (c)] + Non-intelligent and some other creatures cannot open doors, so + shutting doors can be quite valuable. Broken doors cannot be closed. + Bashing a door open may break it. Close can take a count, requires a + direction, and is affected by the "always_repeat" option. +~~~~~19 +[[[[[GJam a door (j) or Spike a door (S)] + Many monsters can simply open closed doors, and can eventually + get through a locked door. You may therefore occasionally want + to jam a door shut with iron spikes. Each spike used on the door + will make it harder to bash down the door, up to a certain limit. + Smaller monsters are less able to bash down doors. In order to + use this command, you must be carrying iron spikes. Jam or Spike + requires a direction. +~~~~~4 +[[[[[GBash a door (B) or Force a door (f)] + This command allows you to bash down jammed doors. Your bashing + ability increases with strength. Bashing open a door can (briefly) + throw you off balance. Doors that are stuck, or which have been + jammed closed with spikes can only be opened by bashing, and all + closed doors can be bashed open if desired. Bashing a door open + may permanently break it so that it can never be closed. Bash or + Force can take a count, requires a direction, and is affected by + the "always_repeat" option. +~~~~~8 +[[[[[GDisarm a trap or chest (D)] + You can attempt to disarm traps on the floor or on chests. If you + fail, there is a chance that you will blunder and set it off. You + can only disarm a trap after you have found it (usually with the + Search command). Disarm can take a count, requires a direction, + and is affected by the "always_repeat" option. +~~~~~63 +[[[[[GAlter (+)] + This special command allows the use of a single keypress to select + any of the "obvious" commands above (attack, tunnel, bash, open, + disarm, close), and, by using macros or keymaps, to combine this + keypress with directions. In general, this allows the use of the + "control" key plus the appropriate "direction" key (including the + roguelike direction keys in roguelike mode) as a kind of generic + "alter the terrain feature of an adjacent grid" command. Alter + can take a count, requires a direction, and is affected by the + "always_repeat" option. +~~~~~43 +[[[[[GEngrave the floor (x)] + The dungeon is full of magics, and as such pools of it collect on + the floor in places. With the "inscribe" command, it is possible + to create some spell effects by inscribing words you have read from + various parchments detailing the languages used within the dungeon. + Then, if there is enough mana collected on that square, walking over + the inscription will trigger the spell. Some spells can be triggered + only by the player, some only by monsters, and some are triggered by + both. +~~~~~46 +[[[[[GSteal (Z)] + Allows the player to try to steal items from shops. Also allows + rogues to steal from monsters. +~~~~~118|Commands|Spells and prayers +#####R--- Spell and Prayer Commands --- +~~~~~3 +[[[[[GBrowse a book (b) or Peruse a book (P)] + Only characters with some knowledge in the magic schools, such as + mages, priests, rogues, and rangers, can read magic spellbooks. + Warriors normally cannot read any books. When this command is used, + all of the spells or prayers contained in the selected book are + displayed, along with information such as their level, the amount of + mana or piety required to cast them, and whether or not you know the + spell or prayer. +~~~~~14 +[[[[[GGain new skills (G)] + Use this command to access the skills menu and spend the skill points + you gain at each new character level to increase the range of things + your character is able to do. +~~~~~91 +[[[[[GGain new abilities (N)] + Use this command to access the Abilities menu and spend the skill points + you gain at each new character level to increase the range of things + your character is able to do. +~~~~~24 +[[[[[GCast a spell / Pray a prayer (m) / Use a mental power] + To cast a spell or prayer, you must have the skill level required in + that school of magic to be able access that spell, and a book that + contains that spell in your inventory (for most schools). Each spell + has a chance of failure which starts out fairly large but decreases + as you gain levels. If you don't have enough mana to cast a spell, + you will be told you do not have enough mana to cast it. Since in most + cases you must read the spell from a book, you cannot be blind or + confused while casting, and there must be some light present. + + Some classes (for example, Thaumaturgists) have the ability to use + some magic without actually needing spell books of any sort. These + classes are able to access their magical powers through the use of + the 'm' command. +~~~~~39 +[[[[[GUse bonus power (if any) (U) or (O)] + Some races and classes have special natural abilities. All of these + possible abilities are listed in an index under the U (or O) command. + These type of abilities can include the Vampire's bite, a DeathMold's + telekinesis, and a RohanKnight's light speed capabilities. +~~~~~119|Commands|Object manipulation +#####R--- Object Manipulation Commands --- +~~~~~10 +[[[[[GEat some food (E)] + You must eat regularly to prevent starvation. As you grow hungry, + a message will appear at the bottom of the screen saying "Hungry". + If you go hungry long enough, you will become weak, then start + fainting, and eventually, you may will die of starvation. You + may use this command to eat food in your inventory. Note that + you can sometimes find food in the dungeon, or you can butcher + corpses of killed creatures to obtain raw meat, but it is not + always wise to eat strange food. +~~~~~12 +[[[[[GFuel your lantern/torch (F)] + If you are using a torch and have more torches in your pack, + or you are using a lantern and have flasks of oil in your pack, + then your can "refuel" them with this command. Torches and Lanterns + are limited in their maximal fuel. In general, two flasks will fully + fuel a lantern and two torches will fully fuel a torch. +~~~~~30 +[[[[[GQuaff a potion (q)] + Use this command to drink a potion. Potions affect the player in + various ways, but the effects are not always immediately obvious. +~~~~~32 +[[[[[GRead a scroll (r)] + Use this command to read a scroll. Scroll spells usually have an + area effect, except for a few cases where they act on other objects. + Reading a scroll causes the parchment to disintegrate as the scroll + takes effect, unless you are an Alchemist. Most scrolls which prompt + for more information can be aborted (by pressing escape), which will + stop reading the scroll before it disintegrates. +~~~~~58 +[[[[[GInscribe an object ({)] + This command inscribes a string on an object. The inscription is + displayed inside curly braces after the object description. The + inscription is limited to the particular object (or pile) and is + not automatically transferred to all similar objects. Under certain + circumstances, ToME will display "fake" inscriptions on certain + objects ("cursed", "broken", "tried", "empty", "NN% off") when + appropriate. These "fake" inscriptions are "covered up" by real + inscriptions, but will re-appear if the real inscription is removed. + In addition, ToME will occasionally place a "real" inscription on + an object for you, normally as the result of your character getting + a "feeling" about the item. All characters will get "feelings" about + weapons and armor after carrying them for a while. Warriors get the + most detailed feelings, and get them quicker than any other class. + An item labeled as "{empty}" was found to be out of charges, and an + item labeled as "{tried}" is a "flavoured" item which the character + has used, but whose effects are unknown. Certain inscriptions have + a meaning to the game, see "@#", "@x#", "!*", and "!x", in the section + on *****command.txt*90[inventory object selection.] +~~~~~59 +[[[[[GUninscribe an object (})] + This command removes the inscription on an object. This command will + have no effect on "fake" inscriptions added by the game itself. +~~~~~15 +[[[[[GHack up a corpse (h or $)] + Corpses can be cut up into smaller pieces of meat, allowing the user to + eat the meat, or cure it for later use. +~~~~~21 +[[[[[GCure meat (K)] + Curing meat requires the use of a potion of salt water, and is used to + protect meat from hacked-up corpses from going bad. +~~~~~16 +[[[[[GDrink from a fountain (H)] + All fountains in Arda are magical, and act like magical potions. The + game will ask you whether you want to quaff from a fountain or to fill + empty bottles. The only way to identify the type of fountain is to + fill your bottles from it and see what you get. +~~~~~44 +[[[[[GGive item to monster (y)] + This command is used to give an item within your inventory to a monster + standing next to you. The monster may not accept the item you give it, + however. +~~~~~96 +[[[[[GChat (Y)] + This command allows you to chat with someone. Be warned that most + monsters won't chat + +#####R--- Magical Object Commands --- +~~~~~2 +[[[[[GActivate an artifact (A)] + You have heard rumours of special weapons and armour deep in the + Pits, items that can let you breath fire like a dragon or light + rooms with just a thought. Should you ever be lucky enough to + find such an item, this command will let you activate its special + ability. Special abilities can only be used if you are wearing or + wielding the item. + Note that there are also a few common objects that can be activated, + e.g. music instruments, monster eggs and spell-storing mage staves, + and that some artifacts, so-called "junkarts", can't be wielded, but + must be activated from the backpack. +~~~~~1 +[[[[[GAim a wand (a) or Zap a wand (z)] + Wands must be aimed in a direction to be used. Wands are magical + devices, and therefore there is a chance you will not be able to + figure out how to use them if you aren't good with magical + devices. They will fire a shot that affects the first object or + creature encountered or fire a beam that affects anything in a + given direction, depending on the wand. An obstruction such as a + door or wall will generally stop the effects from traveling any + farther. This command requires a direction and can use a target. +~~~~~38 +[[[[[GUse a staff (u) or Zap a staff (Z)] + This command will use a staff. A staff is normally very similar + to a scroll, in that they normally either have an area effect or + affect a specific object. Staves are magical devices, and there + is a chance you will not be able to figure out how to use them. +~~~~~45 +[[[[[GZap a rod (z) or Activate a rod (a)] + Rods are extremely powerful magical items, which cannot be burnt + or shattered, and which can have either staff-like or wand-like + effects, but unlike staves and wands, they don't have charges. + Instead, they draw on the ambient magical energy to recharge + themselves, and therefore can only be activated once every few + turns. The recharging time varies depending on the type of rod. + This command may require a direction (depending on the type of + rod, and whether you are aware of its type) and can use a target. +~~~~~120|Commands|Throwing and missile weapons +#####R--- Throwing and Missile Weapons --- +~~~~~11 +[[[[[GFire an item (f) or Fire an item (t)] + You may throw any object carried by your character. Depending on + the weight, it may travel across the room or drop down beside you. + Only one object from a pile will be thrown at a time. Note that + throwing an object will often cause it to break, so be careful! + If you throw something at a creature, your chances of hitting it + are determined by your pluses to hit, your ability at throwing, + and the object's pluses to hit. Once the creature is it, the + object may or may not do any damage to it. You've heard rumors + that some objects found in the dungeon can do huge amounts of + damage when thrown, but you're not sure which objects those + are.... Note that flasks of oil will do a fairly large chunk + of damage to a monster on impact, supposedly representing fire + damage, but it works against fire elementals too... If you are + wielding a missile launcher compatible with the object you are + throwing, then you automatically use the launcher to fire the + missile with much higher range, accuracy, and damage, then you + would get by just throwing the missile. Fire or Throw requires + a direction. Targeting mode (see the next command) can be invoked + with "*" at the "Direction?" prompt. +~~~~~40 +[[[[[GThrow an item (v)] + You may throw any object carried by your character. The lighter + the object, the farther you can throw it. Only one object from a + stack may be thrown at a time. Throwing an object may break it. + If you throw something at a monster, your chances of hitting it + are determined by your pluses to hit, your ability at throwing, + and the object's pluses to hit. If the object hits the monster, + it may or may not do damage. Some objects, such as weapons, or + flasks of oil, can do a substantial amount of damage. This + command requires a direction, and can take a target. +~~~~~55 +[[[[[GTargeting Mode (*)] + This will allow you to aim your spells and such at a specific + monster or grid, so that you can point directly towards that + monster or grid (even if this is not a "compass" direction) when + you are asked for a direction. You can set a target using this + command, or you can set a new target at the "Direction?" prompt when + appropriate. At the targeting prompt, you have many options. First + of all, targetting mode starts targetting nearby monsters which can + be reached by "projectable" spells and thrown objects. In this mode, + you can press "t" (or "5" or ".") to select the current monster, + space to advance to the next monster, "-" to back up to the previous + monster, direction keys to advance to a monster more or less in that + direction, "r" to "recall" the current monster, "q" to exit targetting + mode, and "p" (or "o") to stop targetting monsters and enter the mode + for targetting a location on the floor or in a wall. Note that if + there are no nearby monsters, you will automatically enter this mode. + Note that hitting "o" is just like "p", except that the location + cursor starts on the last examined monster instead of on the player. + In this mode, you use the "direction" keys to move around, and the + "q" key to quit, and the "t" (or "5" or ".") key to target the cursor + location. Note that targetting a location is slightly "dangerous", + as the target is maintained even if you are far away. To cancel an + old target, simply hit "*" and then ESCAPE (or "q"). Note that when + you cast a spell or throw an object at the target location, the path + chosen is the "optimal" path towards that location, which may or may + not be the path you want. Sometimes, by clever choice of a location + on the floor for your target, you may be able to convince a thrown + object or cast spell to squeeze through a hole or corridor that is + blocking direct access to a different grid. Launching a ball spell + or breath weapon at a location in the middle of a group of monsters + can often improve the effects of that attack, since ball attacks are + not stopped by interposed monsters if the ball is launched at a target. + This command takes no time. +~~~~~121|Commands|Looking +#####R--- Looking Commands --- +~~~~~25 +[[[[[GFull screen map (M)] + This command will show a map of the entire dungeon, reduced by a + factor of nine, on the screen. Only the major dungeon features + will be visible because of the scale, so even some important + objects may not show up on the map. This is particularly useful + in locating where the stairs are relative to your current + position, or for identifying unexplored areas of the dungeon. + This command takes no time. +~~~~~23 +[[[[[GLocate player on map (L) or Where is the player (W)] + This command lets you scroll your map around, looking at all sectors + of the current dungeon level, until you press escape, at which point + the map will be re-centred on the player if necessary. To scroll + the map around, simply press any of the "direction" keys. The top + line will display the sector location, and the offset from your + current sector. This command takes no time. +~~~~~22 +[[[[[GLook around (l) or Examine things (x)] + This command is used to look around at nearby monsters (to determine + their type and health) and objects (to determine their type). It is + also used to find out what objects (if any) are under monsters, and + if a monster is currently inside a wall. This command takes no time. + When you are looking at something, you may hit space for more details, + or to advance to the next interesting monster or object, or minus ("-") + to go back to the previous monster or object, or a direction key to + advance to the nearest interesting monster or object (if any) in that + general direction, or "r" to recall information about the current + monster race, or "q" or escape to stop looking around. You always + start out looking at the "nearest" interesting monster or object. +~~~~~18 +[[[[[GObserve an item (I)] + This command lets you observe a previously *identified* item. + This will tell you things about the special powers of the object. + Currently, it only makes sense for artifacts and ego-items. +~~~~~122|Commands|Messages +#####R--- Message Commands --- +~~~~~53 +[[[[[GRepeat level feeling (^F)] + Repeats the feeling about the dungeon level that you got when you + first entered the level. +~~~~~62 +[[[[[GView previous messages (^P)] + This command shows you all the recent messages. You can scroll + through them, or exit with ESCAPE. This command takes no time. +~~~~~69 +[[[[[GTake notes (:)] + This command allows you to take notes, which will then appear in your + note file, if the birth-option "take_notes" was set (the default), or + in your message list (prefixed with "Note:"), if the option was not set. + The note file can be displayed through the "Display Current Knowledge" + command (~ or |). This command takes no time. +~~~~~123|Commands|Game status +#####R--- Game Status Commands --- +~~~~~6 +[[[[[GCharacter Description (C)] + Brings up a full description of your character, including your + skill levels, your current and potential stats, and various other + information. From this screen, you can change your name or use + the file character description command to save your character + status to a file. That command saves additional information, + including your background, your inventory, and the contents of + your house. +~~~~~82 +[[[[[GDisplay Current Knowledge (~ or |)] + The command opens a menu from which you can lookup information + collected so far. This includes known artifacts, unique monsters, + identified objects, killed creatures, recall depths, acquired + corruptions, current pets, current quests, current fates, known + traps, known dungeon towns and last but not least the note file. + + Display known artifacts + This selection lists all of the artifacts that you have encountered. + Any artifact that appears in this list, which you cannot seem to + find, has been lost forever. The "preserve" mode will prevent + you from accidentally losing any artifacts, but will also prevent + you from ever getting a "special" level feeling. + + Display known uniques + Brings up a list of known unique monsters, plus their current + status. Once killed, unique monsters never show up again, with a + few remarkable exceptions. + + Display known objects + This list all 'flavoured' objects (such as rings, scrolls, wands, + potions, etc.) which you have identified. + + Display kill count + This lists all killed creatures together with a total kill count. + + Display recall depths + This lists all recall depths of entered dungeons as well as marks + the current recall dungeon with an asterisk. + + Display corruptions + This lists all acquired corruptions with their beneficial and + detrimental effects. + + Display current pets + Display current quests + Display current fates + Display known traps + Display known dungeon towns + + Display notes + If the option "take_notes" is set shows you your notes file, where all + remarkable events are noted. You can add notes yourself by using the + "Take notes" command (:). + +~~~~~70 +[[[[[GTime of the day (^T)] + This command is used to give the current date and time within the game. + Extremely useful for characters such as Vampires to check whether + it is safe to leave the dungeon. +~~~~~124|Commands|Saving and Exiting +~~~~~125|Saving and Exiting +#####R--- Saving and Exiting Commands --- +~~~~~75 +[[[[[GSave and Quit (Ctrl-X)] + To save your game so that you can return to it later, use this + command. Save files will also be generated (hopefully) if the + game crashes due to a system error. After you die, you can use + your savefile to play again with the same options and such. +~~~~~68 +[[[[[GSave (Ctrl-S)] + This command saves the game but doesn't exit ToME. Use this + frequently if you are paranoid about having the computer crash + while you are playing. +~~~~~31 +[[[[[GQuit (commit suicide) (Q)] + Kills your character and exits ToME. You will be prompted to + make sure you really want to do this, and then asked to verify + that choice. Note that dead characters are dead forever. +~~~~~126|Commands|Pref files +~~~~~127|Pref files|Commands +#####R--- User pref file commands --- +~~~~~65 +[[[[[GInteract with options (=)] + Allow you to interact with options. Note that using the "cheat" + options may mark your savefile as unsuitable for the high score + list. You may change normal options using the "X" and "Y" user + pref commands. You must use the "redraw" command (^R) after + changing certain options. +~~~~~49 +[[[[[GInteract with macros (@)] + Allow you to interact with macros. You may load or save macros + from user pref files, create macros of various types, or define + keymaps. You must define a "current action", shown at the bottom + of the screen, before you attempt to use any of the "create macro" + commands, which use that "current action" as their action. This + is a horrible interface, and will be fixed eventually. +~~~~~51 +[[[[[GInteract with visuals (%)] + Allow you to interact with visuals. You may load or save visuals + from user pref files, or modify the attr/char mappings for the + monsters, objects, and terrain features. You must use the "redraw" + command (^R) to redraw the map after changing attr/char mappings. +~~~~~54 +[[[[[GInteract with colors (&)] + Allow the user to interact with colors. This command only + works on some systems. +~~~~~47 +[[[[[GInteract with the system (!)] + Allow the user to interact with the underlying visual system. + This command is currently unused. +~~~~~71 +[[[[[GEnter a user pref command (")] + ToME stores your preferences in files called "user pref files", + which contain comments and "user pref commands", which are simple strings + describing one aspect of the system about which the user has a preference. + You may enter single user pref commands directly, using the special "Enter + a user pref command" command, activated by "double quote". You may have to + use the "redraw" command (^R) after changing certain of the aspects of the + game, to allow ToME to adapt to your changes. +~~~~~128|Commands|Help +#####R--- Help --- +~~~~~84 +[[[[[GHelp (?)] + Brings up the ToME on-line help system. Note that the help + files are just text files in a particular format, and that other + help files may be available on the Net. In particular, there are + a variety of spoiler files which do not come with the standard + distribution. Check the place you got ToME from or ask on the + newsgroup rec.games.roguelike.angband about them. +~~~~~83 +[[[[[GIdentify Symbol (/)] + Use this command to find out what a character stands for. For + instance, by pressing "/.", you can find out that the "." symbol + stands for a floor spot. When used with a symbol that represents + creatures, the this command will tell you only what class of + creature the symbol stands for, not give you specific information + about a creature you can see. To get that, use the Look command. + + There are three special symbols you can use with the Identify + Symbol command to access specific parts of your monster memory. + Typing Ctrl-A when asked for a symbol will recall details about + all monsters, typing Ctrl-U will recall details about all unique + monsters, and typing Ctrl-N will recall details about all + non-unique monsters. + + If the character stands for a creature, you are asked if you want + to recall details. If you answer yes, information about the + creatures you have encountered with that symbol is shown in the + Recall window if available, or on the screen if not. You can also + answer "k" to see the list sorted by number of kills, or "p" to + see the list sorted by dungeon level the monster is normally found + on. Pressing ESCAPE at any point will exit this command. +~~~~~41 +[[[[[GGame Version (V)] + This command will tell you what version of ToME you are using. + For more information, see the "version.txt" help file. + +~~~~~129|Commands|Extras +#####R--- Extra Commands --- +~~~~~85 +[[[[[GRepeat last command (n)] + This will automatically repeat the last command you inputted. +~~~~~27 +[[[[[GSacrifice at an altar (O)] + Altars are places dedicated to the worship of a particular God. To + start worshipping the God who owns the altar, you must first sacrifice + on their altar. + + Be warned, not all Gods are equal in power, and once you have selected + a God to worship, it is almost impossible to change which God you worship. + When your God is happy with you, you will receive more benefits from them. + Your God's happiness will decrease over time, so you will need to accomplish + deeds that increase your standing. Note that there is no requirement + for most classes to worship any God. (See *****gods.txt*0[gods.txt] for more information) +~~~~~28 +[[[[[GPray to your God (p)] + If you worship a God, you have the option of praying. The effects of + praying differ considerably depending on the god, ranging from the + battle frenzy of paladins to the self-healing powers of druids. + However, Gods do not like being disturbed, with negative effects on + your piety. See *****gods.txt*0[gods.txt] for more information. +~~~~~29 +[[[[[GPet commands (P)] + From time to time, you may acquire a pet within the dungeon. Pets are able + (to a more or less limited extent) to follow some simple commands, like + follow me. These commands are all accessed through the menu under "Pet + Commands". +~~~~~52 +[[[[[GToggle Choice Window (^E)] + Toggles the display in the choice window (if available) between + your inventory and your equipment. This command only applies if + you are running ToME under a windowing environment and the + choice window is available. This also redraws the choice window. +~~~~~66 +[[[[[GRedraw Screen (^R)] + This command adapts to various changes in global options, and + redraws all of the windows. This command should be used after + changing various global properties (options, attr/char mappings, + color definitions, etc). When in doubt, use it. +~~~~~56 +[[[[[GLoad screen dump (left-paren)] + This command loads a "snap-shot" of the current screen from the file + "dump.txt", and displays it on the screen. +~~~~~57 +[[[[[GSave screen dump (right-paren)] + This command dumps a "snap-shot" of the current screen to the file + "dump.txt", including encoded color information. +~~~~~64 +[[[[[GQuit to next midi song (^Q)] + In the DOS binary (and maybe Windows) of ToME, it is possible for + the game to play any midi song in the lib/xtra/music directory. This + command allows the player to force the game to finish the current song + and move on to another one (i.e. if you are tired of hearing the current + song, you can change it). +~~~~~80 +[[[[[GDo cmovies (|)] + The cmovie command (press | key in both normal or roguelike set) allows + you to make a "movie" that you can send to people showing your movement + through a part of the dungeon (like clearing that GCV . . .) + + It asks for a name (it will add the extension itself) and then if you wish + to play or record it. + + The cmovie files (.cmv) are located in lib/cmov, note that they quickly + become huge and so you REALLY should compress them before sending to friends. +~~~~~97 +[[[[[GRecord macros ($)] + This is an easier way to create macros. Activate it, press the key + sequence for your macro, reactivate it and it will create the macro + for you. Note than when possible using the @ key at item selection + is a good idea since it removes the need to inscribe items. +~~~~~98 +[[[[[GTake html screenshot (^\])] + Creates an html screenshot of the current screen. +~~~~~89 +[[[[[GBegin extended command (#)] + Begins an extended command. Type "help" or "?" at the prompt for a + list of these commands. + +-- +Original: Alexander Cutler and Andy Astrand +Updated (2.7.6): Russ Allbery (rra@cs.stanford.edu) +Updated (2.7.9): Ben Harrison (benh@phial.com) +Updated PernAngband 5.x.x: Dawnmist (angband@dawnmist.8m.com) +Updated for ToME 2.1 diff --git a/lib/mods/theme/help/corspoil.txt b/lib/mods/theme/help/corspoil.txt new file mode 100644 index 00000000..baac4fae --- /dev/null +++ b/lib/mods/theme/help/corspoil.txt @@ -0,0 +1,136 @@ +~~~~~01|Corruptions (Spoiler) +~~~~~02|Spoilers|Corruptions +#####R=== ToME Corruptions Spoiler === + +Sometimes adventurers become exposed to the dark powers of Morgoth. If they +are unable to resist these powers, they become corrupted. Corruptions can +change their physical or mental abilities, some of which can be good, and +some bad. Most corruptions will affect you permanently, although some only +operate when they are activated (whether by player choice or as a random +event). You can check which corruptions do you have in the knowledge screen +6 (accessed through the '~' menu) or in a character dump. + +#####GGaining and (not) losing corruptions +There are several ways that you can become corrupted. + +You can become corrupted by quaffing a Potion of Corruption or by drinking +from a Fountain of Corruption. Also some strange items can be activated +for corruption. + +Corruptions are permanent. Once you have one, you have it for life. + +[[[[[BBalrog Aura] + Surrounds you with a fiery aura + But it can burn scrolls when you read them +[[[[[GGain message: A corrupted wall of flames surrounds you.] +[[[[[RLose message: The wall of corrupted flames abandons you.] + + +[[[[[BBalrog Wings] + Creates ugly, but working, wings allowing you to fly + But it reduces charisma by 4 and dexterity by 2 +[[[[[GGain message: Wings of shadow grow in your back.] +[[[[[RLose message: The wings in your back fall apart.] + + +[[[[[BBalrog Strength] + Provides 3 strength and 1 constitution + But it reduces charisma by 1 and dexterity by 3 +[[[[[GGain message: Your muscles get unnatural strength.] +[[[[[RLose message: Your muscles get weaker again.] + + +[[[[[BBalrog Form] + Allows you to turn into a Balrog at will + You need Balrog Aura, Balrog Wings and Balrog Strength to activate it +[[[[[GGain message: You feel the might of a Balrog inside you.] +[[[[[RLose message: The presence of the Balrog seems to abandon you.] +It depends on: + Balrog Aura + Balrog Wings + Balrog Strength + + +[[[[[BDemon Spirit] + Increases your intelligence by 1 + But reduce your charisma by 2 +[[[[[GGain message: Your spirit opens to corrupted thoughts.] +[[[[[RLose message: Your spirit closes again to the corrupted thoughts.] + + +[[[[[BDemon Hide] + Increases your armour class by your level + Provides immunity to fire at level 40 + But reduces speed by your level / 7 +[[[[[GGain message: Your skin grows into a thick hide.] +[[[[[RLose message: Your skin returns to a natural state.] + + +[[[[[BDemon Breath] + Provides fire breath + But gives a small chance to spoil potions when you quaff them +[[[[[GGain message: Your breath becomes mephitic.] +[[[[[RLose message: Your breath is once again normal.] + + +[[[[[BDemon Realm] + Provides access to the demon school skill and the use of demonic equipment + You need Demon Spirit, Demon Hide and Demon Breath to activate it +[[[[[GGain message: You feel more attuned to the demon realm.] +[[[[[RLose message: You lose your attunement to the demon realm.] +It depends on: + Demon Spirit + Demon Hide + Demon Breath + + +[[[[[BRandom teleportation] + Randomly teleports you around +[[[[[GGain message: Space seems to fizzle around you.] +[[[[[RLose message: Space solidify again around you.] +It is opposed to: + Anti-teleportation + + +[[[[[BAnti-teleportation] + Prevents all teleportations, be it of you or monsters +[[[[[GGain message: Space continuum freezes around you.] +[[[[[RLose message: Space continuum can once more be altered around you.] +It is opposed to: + Random teleportation + + +[[[[[BTroll Blood] + Troll blood flows in your veins, granting increased regeneration + It also enables you to feel the presence of other troll beings + But it will make your presence more noticeable and aggravating +[[[[[GGain message: Your blood thickens, you sense corruption in it.] +[[[[[RLose message: Your blood returns to a normal state.] + + +[[[[[BVampiric Teeth] + Your teeth allow you to drain blood to feed yourself + However your stomach now only accepts blood. +[[[[[GGain message: You grow vampiric teeth!] +It is not removable. + + +[[[[[BVampiric Strength] + Your body seems somewhat dead + In this near-undead state it has improved strength, constitution and + intelligence, but also reduced dexterity, wisdom and charisma. +[[[[[GGain message: Your body seems more dead than alive.] +It is not removable. +It depends on: + Vampiric Teeth + + +[[[[[BVampire] + You are a Vampire. As such you resist cold, poison, darkness and nether. + Your life is sustained, but you cannot stand the light of the sun. +[[[[[GGain message: You die to be reborn in a Vampire form.] +It is not removable. +It depends on: + Vampiric Strength + + diff --git a/lib/mods/theme/help/debug.txt b/lib/mods/theme/help/debug.txt new file mode 100644 index 00000000..56d57098 --- /dev/null +++ b/lib/mods/theme/help/debug.txt @@ -0,0 +1,278 @@ +|||||oy +~~~~~99|Debug +#####R=== Debug Commands === + + +Debug commands are entered as an "underlying command" (a single key) +plus a variety of optional or required arguments. + +The debug commands are used for debugging and experimenting. The game +will not be scored if you use debug commands. + +~~~~~100|Debug|Command List +#####R=== Command List Summary === + + *****debug.txt*1[a Autorestore] *****debug.txt*2[A Show all stats] + *****debug.txt*3[b Teleport to target] *****debug.txt*4[B HP to zero] + *****debug.txt*5[c Create object] *****debug.txt*6[C Create artifact] + *****debug.txt*7[d Detect all] *****debug.txt*8[D Teleport to the wilderness] + *****debug.txt*9[e Edit character attributes] *****debug.txt*10[E Change grid's mana] + *****debug.txt*11[f *IDENTIFY*] *****debug.txt*12[F Features] + *****debug.txt*13[g Create good item] G (unused) + *****debug.txt*15[h Change life rating] *****debug.txt*16[H Hostile monster creation] + *****debug.txt*17[i Identify] I (unused) + *****debug.txt*19[j Jump to other level] J (unused) + *****debug.txt*21[k Check attributes] K (unused) + *****debug.txt*23[l Learn about objects] L (unused) + *****debug.txt*25[m Magic Mapping] *****debug.txt*26[M Gain corruption] + *****debug.txt*27[n Summon named monster] *****debug.txt*28[N Summon _friendly_ named monster] + *****debug.txt*29[o Edit object attributes] O (unused) + *****debug.txt*31[p Phase door] *****debug.txt*32[P Panic save] + *****debug.txt*33[q Get a quest] Q (unused) + *****debug.txt*35[r Gain reward] *****debug.txt*36[R Create a trap] + *****debug.txt*37[s Summon monster] *****debug.txt*38[S Change the feature of the map] + *****debug.txt*39[t Teleport] *****debug.txt*40[T Teleport to a town] + *****debug.txt*41[u Complete map] *****debug.txt*42[U Become undead] + *****debug.txt*43[v Random artifact/ego item] V (unused) + *****debug.txt*45[w Wizard light the level] *****debug.txt*46[W Wish] + *****debug.txt*47[x XP boost] X (unused) + y (unused) Y (unused) + *****debug.txt*51[z Zap monsters] Z (unused) + ! (unused) ^A (unused) + *****debug.txt*55[@ Increment monster level] ^B (unused) + # (unused) ^C (unused) + $ (unused) ^D (unused) + % (unused) ^E (unused) + ^ (unused) ^F (unused) + & (unused) ^G (unused) + *****debug.txt*61[* Lose special powers] ^H (unused) + ( (unused) ^I (unused) + ) (unused) ^J (unused) + { (unused) ^K (unused) + } (unused) ^L (unused) + [ (unused) ^M (unused) + ] (unused) ^N (unused) + *****debug.txt*67[- Create object] ^O (unused) + *****debug.txt*69[_ The path to the god dark] ^P (unused) + *****debug.txt*71[+ Gain a fate] ^Q (unused) + *****debug.txt*73[= Align monster] ^R (unused) + ; (unused) ^S (unused) + : (unused) ^T (unused) + ' (unused) ^U (unused) + *****debug.txt*75[" Create spoiler] ^V (unused) + , (unused) ^W (unused) + < (unused) ^X (unused) + . (unused) ^Y (unused) + *****debug.txt*81[> Lua script] ^Z (unused) + \ (unused) | (unused) + ` (unused) ~ (unused) + *****debug.txt*91[/ Summon monster] *****debug.txt*92[? Help] + ^\ (unused) + +~~~~~111|Debug|Command descriptions +#####R=== Command Descriptions === + + The following command descriptions are listed as the command name +plus the "underlying command" key. Then comes a brief description of the +command. Some commands use the "repeat count" to automatically repeat the +command several times, while others use the "repeat count" as an "argument", +for example, commands which need a "quantity" will use the "repeat count" +instead of asking for a quantity, allowing the use of "0d" for "drop all". +Commands which ask for a quantity will convert any "letters" into the +maximal legal value. +~~~~~112|Debug|General +#####R--- General Commands --- +~~~~~1 +[[[[[GAutorestore (a)] + Restores all your stats. This includes HP, SP, hunger, lost levels, etc. +~~~~~2 +[[[[[GShow all stats (A)] + This brings up the Character status menu, where you can view + all the stats about your character. +~~~~~3 +[[[[[GTeleport to target (b)] + You first need to have a monster targeted, then you can use + this command to teleport next to the monster. +~~~~~4 +[[[[[GHP to zero (B)] + Bring your health down to zero. +~~~~~5 +[[[[[GCreate object (c)] + Allows you to select and create a new object where you stand. + This brings up a menu where you can choose what type of object + you want created. +~~~~~6 +[[[[[GCreate artifact (C)] + Allows you to select and create a new artifact where you stand. + Use the "Command count", aka 0, to specify a number from + a_info.txt to put it on the ground where you are standing. + For example : 03^AC will create the Arkenstone of Thrane (+3) +~~~~~7 +[[[[[GDetect all (d)] + Sense ways out/monsters/objects/traps. +~~~~~8 +[[[[[GTeleport to the wilderness (D)] + From a dungeon this will teleport you to the wilderness level + and if used in the wilderness it acts like teleport. +~~~~~9 +[[[[[GEdit character attributes (e)] + Edit character attributes including Str, Int, Dex, experience, gold, luck, etc. +~~~~~10 +[[[[[GChange grid's mana (E)] + Alter how much mana a grid has. + Use the "Command count", aka 0, to specify the amount of mana + that you want. +~~~~~11 +[[[[[G*IDENTIFY* (f)] + Like a Scroll of *Identify*. +~~~~~12 +[[[[[GFeatures (F)] + Use the "Command count", aka 0, to specify a number from + f_info.txt to put a feature on the ground where you are + standing. +~~~~~13 +[[[[[GCreate good item (g)] + Create a random good item where you stand. +~~~~~15 +[[[[[GChange life rating (h)] + Change your life rating. +~~~~~16 +[[[[[GHostile monster creation (H)] + Summons a Pack of Creatures of the same kind. Will only work + if MONSTER_HORDES has been defined at compile time. +~~~~~17 +[[[[[GIdentify (i)] + Like a Scroll of Identify. +~~~~~19 +[[[[[GJump to other level (j)] + Jump to other dungeon level. This does not work in the + wilderness as it is treated as all one level. +~~~~~21 +[[[[[GCheck attributes (k)] + Displays your characters attributes. +~~~~~23 +[[[[[GLearn about objects (l)] + Make you know about all objects. Not sure how this works. +~~~~~25 +[[[[[GMagic Mapping (m)] + Like a Scroll of Magic mapping. +~~~~~26 +[[[[[GGain corruption (M)] + Allows your character to gain a corruption. +~~~~~27 +[[[[[GSummon named monster (n)] + Summon a monster that will appear next to you. + Use the "Command count", aka 0, to specify a number from + r_info.txt to summon a monster. +~~~~~28 +[[[[[GSummon _friendly_ named monster (N)] + The same as n but the creature will be your pet. Try this + with number 861, Darkgod is now your pet. +~~~~~29 +[[[[[GEdit object attributes (o)] + Allows you to alter the attributes of any object that you + have in your backpack. +~~~~~31 +[[[[[GPhase door (p)] + Like a Scroll of Phase Door. +~~~~~32 +[[[[[GPanic save (P)] + Save and quit the game, which is the same as doing a ^X. +~~~~~33 +[[[[[GGet a quest (q)] + Get a quest. + Use the "Command count", aka 0, to specify a number from + 1 to 25, as defined in defines.h ( the QUEST_XXX items ). + For example : 04^Aq will get you the thieves quest. +~~~~~35 +[[[[[GGain reward (r)] + Some high being grants you a reward. +~~~~~36 +[[[[[GCreate a trap (R)] + Use the "Command count", aka 0, to specify a number from + tr_info.txt to put a trap on the ground where you are + standing. +~~~~~37 +[[[[[GSummon monster (s)] + Summon a random monster, next to where you stand. +~~~~~38 +[[[[[GChange the feature of the map (S)] + This allows you to change the "special" field of the current + grid. This special field is used to store things like quest + ids, dungeon entries, and so on, not to be used unless + one knows what it's doing. +~~~~~39 +[[[[[GTeleport (t)] + Like a Scroll of Teleport. +~~~~~40 +[[[[[GTeleport to a town (T)] + Teleports you to a specific town. + Use the "Command count", aka 0, to specify a number from + wf_info.txt for where you want to go. + standing. + For example : 02^AT will teleport you to Gondolin +~~~~~41 +[[[[[GComplete map (u)] + Displays the complete map of the dungeon. +~~~~~42 +[[[[[GBecome undead (U)] + This is supposed to make you undead (as in the Necromantic power). +~~~~~43 +[[[[[GRandom artifact/ego item (v)] + Create a random artifact/ego item where you stand. +~~~~~45 +[[[[[GWizard light the level (w)] + Looks like the same as u. +~~~~~46 +[[[[[GWish (W)] + Makes all your wishes come true. + + Read the *****wishing.txt*0[wishing spoiler] to see how these work. +~~~~~47 +[[[[[GXP boost (x)] + Use the "Command count", aka 0, to specify the increment, + if you do not specify a parameter it doubles your XP, + otherwise it increments by the specified amount. +~~~~~51 +[[[[[GZap monsters (z)] + All monsters in sight range vanish like Mass Genocide, only with no + HP price. +~~~~~55 +[[[[[GIncrement monster level (@)] + Level up a monster. +~~~~~61 +[[[[[GLose special powers (*)] + Returns your powers to a normal level. +~~~~~67 +[[[[[GCreate object (-)] + Allows you to create a new object where you stand. You must + specify an object number from k_info.txt. +~~~~~69 +[[[[[GThe path to the god dark (_)] + Do not use this as it is used by DarkGod as a test for Lua + and will CRASH the game. You have been warned. +~~~~~71 +[[[[[GGain a fate (+)] + Unearth more of your prophecy. +~~~~~73 +[[[[[GAlign monster (=)] + Use the "Command count", aka 0, to specify one of the following + alignment types: + 0 monster becomes enemy + 1 monster becomes neutral + 2 monster becomes friendly + 3 monster becomes pet + 4 monster becomes companion + You then point at an enemy and press space. +~~~~~75 +[[[[[GCreate spoiler (")] + Brings up a menu that allows you to create a spoiler file. +~~~~~81 +[[[[[GLua script (>)] + Allows you to run a Lua script. +~~~~~91 +[[[[[GSummon monster (/)] + Summons a random monster next to you. +~~~~~91 +[[[[[GHelp (?)] + Displays the main help file. diff --git a/lib/mods/theme/help/def.aux b/lib/mods/theme/help/def.aux new file mode 100644 index 00000000..983e9683 --- /dev/null +++ b/lib/mods/theme/help/def.aux @@ -0,0 +1,3 @@ +file_ext="html" +link_prefix="" +link_suffix="" diff --git a/lib/mods/theme/help/defines.txt b/lib/mods/theme/help/defines.txt new file mode 100644 index 00000000..ac997501 --- /dev/null +++ b/lib/mods/theme/help/defines.txt @@ -0,0 +1,639 @@ +|||||oy +~~~~~81|Defines +~~~~~85|Defines|Tvals +~~~~~82|Automatizer|Defines +~~~~~83|Tvals +#####R /----------------------------------------\ +#####R < Tvals and svals > +#####R \----------------------------------------/ + +Some objects don't have svals as such. Spellbooks, wands, and staves for +instance don't have svalues as they are defined in lua. + +TV_SKELETON 1 /* Skeletons ('s') */ +TV_BOTTLE 2 /* Empty bottles ('!') */ +*****defines.txt*04[TV_BATERIE] 4 /* For the Alchemists */ +TV_SPIKE 5 /* Spikes ('~') */ +TV_MSTAFF 6 /* Mage Staffs */ +TV_CHEST 7 /* Chests ('~') */ +TV_PARCHMENT 8 /* Parchments from Kamband */ +*****defines.txt*09[TV_CORPSE] 9 /* Monster corpses */ +TV_EGG 10 /* Monster Eggs */ +TV_JUNK 11 /* Sticks, Pottery, etc ('~') */ +*****defines.txt*12[TV_TOOL] 12 /* Tools */ +*****defines.txt*14[TV_INSTRUMENT] 14 /* Musical instruments */ +*****defines.txt*15[TV_BOOMERANG] 15 /* Boomerangs */ +*****defines.txt*16[TV_SHOT] 16 /* Ammo for slings */ +*****defines.txt*16[TV_ARROW] 17 /* Ammo for bows */ +*****defines.txt*16[TV_BOLT] 18 /* Ammo for x-bows */ +*****defines.txt*19[TV_BOW] 19 /* Slings/Bows/Xbows */ +*****defines.txt*20[TV_DIGGING] 20 /* Shovels/Picks */ +*****defines.txt*21[TV_HAFTED] 21 /* Priest Weapons */ +*****defines.txt*22[TV_POLEARM] 22 /* Pikes/Glaives/Spears/etc. */ +*****defines.txt*23[TV_SWORD] 23 /* Edged Weapons */ +*****defines.txt*24[TV_AXE] 24 /* Axes/Cleavers */ +*****defines.txt*30[TV_BOOTS] 30 /* Boots */ +*****defines.txt*31[TV_GLOVES] 31 /* Gloves */ +*****defines.txt*32[TV_HELM] 32 /* Helms */ +*****defines.txt*32[TV_CROWN] 33 /* Crowns */ +*****defines.txt*34[TV_SHIELD] 34 /* Shields */ +*****defines.txt*35[TV_CLOAK] 35 /* Cloaks */ +*****defines.txt*36[TV_SOFT_ARMOR] 36 /* Soft Armor */ +*****defines.txt*37[TV_HARD_ARMOR] 37 /* Hard Armor */ +*****defines.txt*38[TV_DRAG_ARMOR] 38 /* Dragon Scale Mail */ +*****defines.txt*39[TV_LITE] 39 /* Lites (including Specials) */ +*****defines.txt*40[TV_AMULET] 40 /* Amulets (including Specials) */ +*****defines.txt*45[TV_RING] 45 /* Rings (including Specials) */ +*****defines.txt*46[TV_TRAPKIT] 46 /* Trapkits */ +TV_TOTEM 54 /* Summoner totems */ +*****defines.txt*55[TV_STAFF] 55 /* Staffs */ +*****defines.txt*65[TV_WAND] 65 /* Wands */ +*****defines.txt*66[TV_ROD] 66 /* Rod tips */ +*****defines.txt*67[TV_ROD_MAIN] 67 /* Rod body's */ +*****defines.txt*70[TV_SCROLL] 70 /* Scrolls */ +*****defines.txt*71[TV_POTION] 71 /* potions */ +*****defines.txt*72[TV_POTION2] 72 /* Second set of potion */ +TV_FLASK 77 /* Flasks of oil */ +*****defines.txt*80[TV_FOOD] 80 /* Food, including mushrooms */ +TV_HYPNOS 99 /* To wield monsters !:) */ +TV_GOLD 100 /* Gold can only be picked up by players */ +TV_RANDART 102 /* Random Artifacts */ +TV_RUNE1 104 /* Base runes */ +TV_RUNE2 105 /* Modifier runes */ +TV_BOOK 111 /* spell books */ +*****defines.txt*115[TV_DAEMON_BOOK] 115 /* Demon blades, shields and horns */ +~~~~~84|Defines|Svals +~~~~~12|Svals +/* The "sval" codes for TV_TOOL */ + SV_TOOL_CLIMB 0 + SV_PORTABLE_HOLE 1 +~~~~~16 +/* The "sval" codes for TV_SHOT/TV_ARROW/TV_BOLT */ + SV_AMMO_LIGHT 0 /* pebbles */ + SV_AMMO_NORMAL 1 /* shots, arrows, bolts */ + SV_AMMO_HEAVY 2 /* seeker arrows and bolts, mithril shots */ +~~~~~14 +/* The "sval" codes for TV_INSTRUMENT */ + SV_FLUTE 1 + SV_BANJO 2 + SV_LUTE 3 + SV_MANDOLIN 4 + SV_DRUM 5 + SV_HARP 6 + SV_HORN 7 +~~~~~46 +/* The "sval" codes for TV_TRAPKIT */ + SV_TRAPKIT_SLING 1 + SV_TRAPKIT_BOW 2 + SV_TRAPKIT_XBOW 3 + SV_TRAPKIT_POTION 4 + SV_TRAPKIT_SCROLL 5 + SV_TRAPKIT_DEVICE 6 +~~~~~15 +/* The "sval" codes for TV_BOOMERANG */ + SV_BOOM_S_WOOD 1 /* 1d4 */ + SV_BOOM_WOOD 2 /* 1d9 */ + SV_BOOM_S_METAL 3 /* 1d8 */ + SV_BOOM_METAL 4 /* 2d4 */ +~~~~~19 +/* The "sval" codes for TV_BOW (note information in "sval") */ + SV_SLING 2 /* (x2) */ + SV_SHORT_BOW 12 /* (x2) */ + SV_LONG_BOW 13 /* (x3) */ + SV_LIGHT_XBOW 23 /* (x3) */ + SV_HEAVY_XBOW 24 /* (x4) */ +~~~~~20 +/* The "sval" codes for TV_DIGGING */ + SV_SHOVEL 1 + SV_GNOMISH_SHOVEL 2 + SV_DWARVEN_SHOVEL 3 + SV_PICK 4 + SV_ORCISH_PICK 5 + SV_DWARVEN_PICK 6 + SV_MATTOCK 7 +~~~~~21 +/* The "sval" values for TV_HAFTED */ + SV_CLUB 1 /* 1d4 */ + SV_WHIP 2 /* 1d6 */ + SV_QUARTERSTAFF 3 /* 1d9 */ + SV_NUNCHAKU 4 /* 2d3 */ + SV_MACE 5 /* 2d4 */ + SV_BALL_AND_CHAIN 6 /* 2d4 */ + SV_WAR_HAMMER 8 /* 3d3 */ + SV_LUCERN_HAMMER 10 /* 2d5 */ + SV_THREE_PIECE_ROD 11 /* 3d3 */ + SV_MORNING_STAR 12 /* 2d6 */ + SV_FLAIL 13 /* 2d6 */ + SV_LEAD_FILLED_MACE 15 /* 3d4 */ + SV_TWO_HANDED_FLAIL 18 /* 3d6 */ + SV_GREAT_HAMMER 19 /* 4d6 */ + SV_MACE_OF_DISRUPTION 20 /* 5d8 */ + SV_GROND 50 /* 3d4 */ +~~~~~24 +/* The "sval" values for TV_AXE */ + SV_HATCHET 1 /* 1d5 */ + SV_CLEAVER 2 /* 2d4 */ + SV_LIGHT_WAR_AXE 8 /* 2d5 */ + SV_BEAKED_AXE 10 /* 2d6 */ + SV_BROAD_AXE 11 /* 2d6 */ + SV_BATTLE_AXE 22 /* 2d8 */ + SV_GREAT_AXE 25 /* 4d4 */ + SV_LOCHABER_AXE 28 /* 3d8 */ + SV_SLAUGHTER_AXE 30 /* 5d7 */ +~~~~~22 +/* The "sval" values for TV_POLEARM */ + SV_SPEAR 2 /* 1d6 */ + SV_SICKLE 3 /* 2d3 */ + SV_AWL_PIKE 4 /* 1d8 */ + SV_TRIDENT 5 /* 1d9 */ + SV_FAUCHARD 6 /* 1d10 */ + SV_BROAD_SPEAR 7 /* 1d9 */ + SV_PIKE 8 /* 2d5 */ + SV_GLAIVE 13 /* 2d6 */ + SV_HALBERD 15 /* 3d4 */ + SV_GUISARME 16 /* 2d5 */ + SV_SCYTHE 17 /* 5d3 */ + SV_LANCE 20 /* 2d8 */ + SV_TRIFURCATE_SPEAR 26 /* 2d9 */ + SV_HEAVY_LANCE 29 /* 4d8 */ + SV_SCYTHE_OF_SLICING 30 /* 8d4 */ +~~~~~23 +/* The "sval" codes for TV_SWORD */ + SV_BROKEN_DAGGER 1 /* 1d1 */ + SV_BROKEN_SWORD 2 /* 1d2 */ + SV_DAGGER 4 /* 1d4 */ + SV_MAIN_GAUCHE 5 /* 1d5 */ + SV_RAPIER 7 /* 1d6 */ + SV_SMALL_SWORD 8 /* 1d6 */ + SV_BASILLARD 9 /* 1d8 */ + SV_SHORT_SWORD 10 /* 1d7 */ + SV_SABRE 11 /* 1d7 */ + SV_CUTLASS 12 /* 1d7 */ + SV_KHOPESH 14 /* 2d4 */ + SV_TULWAR 15 /* 2d4 */ + SV_BROAD_SWORD 16 /* 2d5 */ + SV_LONG_SWORD 17 /* 2d5 */ + SV_SCIMITAR 18 /* 2d5 */ + SV_KATANA 20 /* 3d4 */ + SV_BASTARD_SWORD 21 /* 3d4 */ + SV_GREAT_SCIMITAR 22 /* 4d5 */ + SV_CLAYMORE 23 /* 2d8 */ + SV_ESPADON 24 /* 2d9 */ + SV_TWO_HANDED_SWORD 25 /* 3d6 */ + SV_FLAMBERGE 26 /* 3d7 */ + SV_EXECUTIONERS_SWORD 28 /* 4d5 */ + SV_ZWEIHANDER 29 /* 4d6 */ + SV_BLADE_OF_CHAOS 30 /* 6d5 */ + SV_SHADOW_BLADE 31 /* 4d4 */ + SV_BLUESTEEL_BLADE 32 /* 3d9 */ + SV_DARK_SWORD 33 /* 3d7 */ +~~~~~34 +/* The "sval" codes for TV_SHIELD */ + SV_SMALL_LEATHER_SHIELD 2 + SV_SMALL_METAL_SHIELD 3 + SV_LARGE_LEATHER_SHIELD 4 + SV_LARGE_METAL_SHIELD 5 + SV_DRAGON_SHIELD 6 + SV_SHIELD_OF_DEFLECTION 10 +~~~~~32 +/* The "sval" codes for TV_HELM */ + SV_HARD_LEATHER_CAP 2 + SV_METAL_CAP 3 + SV_IRON_HELM 5 + SV_STEEL_HELM 6 + SV_DRAGON_HELM 7 + SV_IRON_CROWN 10 + SV_GOLDEN_CROWN 11 + SV_JEWELED_CROWN 12 + SV_MORGOTH 50 +~~~~~30 +/* The "sval" codes for TV_BOOTS */ + SV_PAIR_OF_SOFT_LEATHER_BOOTS 2 + SV_PAIR_OF_HARD_LEATHER_BOOTS 3 + SV_PAIR_OF_METAL_SHOD_BOOTS 6 +~~~~~35 +/* The "sval" codes for TV_CLOAK */ + SV_CLOAK 1 + SV_ELVEN_CLOAK 2 + SV_FUR_CLOAK 3 + SV_SHADOW_CLOAK 6 +~~~~~31 +/* The "sval" codes for TV_GLOVES */ + SV_SET_OF_LEATHER_GLOVES 1 + SV_SET_OF_GAUNTLETS 2 + SV_SET_OF_CESTI 5 +~~~~~36 +/* The "sval" codes for TV_SOFT_ARMOR */ + SV_FILTHY_RAG 1 + SV_ROBE 2 + SV_PAPER_ARMOR 3 /* 4 */ + SV_SOFT_LEATHER_ARMOR 4 + SV_SOFT_STUDDED_LEATHER 5 + SV_HARD_LEATHER_ARMOR 6 + SV_HARD_STUDDED_LEATHER 7 + SV_RHINO_HIDE_ARMOR 8 + SV_CORD_ARMOR 9 /* 6 */ + SV_PADDED_ARMOR 10 /* 4 */ + SV_LEATHER_SCALE_MAIL 11 + SV_LEATHER_JACK 12 + SV_STONE_AND_HIDE_ARMOR 15 /* 15 */ + SV_THUNDERLORD_SUIT 16 +~~~~~37 +/* The "sval" codes for TV_HARD_ARMOR */ + SV_RUSTY_CHAIN_MAIL 1 /* 14- */ + SV_RING_MAIL 2 /* 12 */ + SV_METAL_SCALE_MAIL 3 /* 13 */ + SV_CHAIN_MAIL 4 /* 14 */ + SV_DOUBLE_RING_MAIL 5 /* 15 */ + SV_AUGMENTED_CHAIN_MAIL 6 /* 16 */ + SV_DOUBLE_CHAIN_MAIL 7 /* 16 */ + SV_BAR_CHAIN_MAIL 8 /* 18 */ + SV_METAL_BRIGANDINE_ARMOUR 9 /* 19 */ + SV_SPLINT_MAIL 10 /* 19 */ + SV_PARTIAL_PLATE_ARMOUR 12 /* 22 */ + SV_METAL_LAMELLAR_ARMOUR 13 /* 23 */ + SV_FULL_PLATE_ARMOUR 15 /* 25 */ + SV_RIBBED_PLATE_ARMOUR 18 /* 28 */ + SV_MITHRIL_CHAIN_MAIL 20 /* 28+ */ + SV_MITHRIL_PLATE_MAIL 25 /* 35+ */ + SV_ADAMANTITE_PLATE_MAIL 30 /* 40+ */ +~~~~~38 +/* The "sval" codes for TV_DRAG_ARMOR */ + SV_DRAGON_BLACK 1 + SV_DRAGON_BLUE 2 + SV_DRAGON_WHITE 3 + SV_DRAGON_RED 4 + SV_DRAGON_GREEN 5 + SV_DRAGON_MULTIHUED 6 + SV_DRAGON_SHINING 10 + SV_DRAGON_LAW 12 + SV_DRAGON_BRONZE 14 + SV_DRAGON_GOLD 16 + SV_DRAGON_CHAOS 18 + SV_DRAGON_BALANCE 20 + SV_DRAGON_POWER 30 +~~~~~39 +/* The sval codes for TV_LITE */ + SV_LITE_TORCH 0 + SV_LITE_LANTERN 1 + SV_LITE_TORCH_EVER 2 + SV_LITE_DWARVEN 3 + SV_LITE_FEANORIAN 4 + SV_LITE_GALADRIEL 100 + SV_LITE_ELENDIL 101 + SV_LITE_THRAIN 102 + SV_LITE_UNDEATH 103 + SV_LITE_PALANTIR 104 + SV_ANCHOR_SPACETIME 105 + SV_STONE_LORE 106 +~~~~~40 +/* The "sval" codes for TV_AMULET */ + SV_AMULET_DOOM 0 + SV_AMULET_TELEPORT 1 + SV_AMULET_ADORNMENT 2 + SV_AMULET_SLOW_DIGEST 3 + SV_AMULET_RESIST_ACID 4 + SV_AMULET_SEARCHING 5 + SV_AMULET_BRILLANCE 6 + SV_AMULET_CHARISMA 7 + SV_AMULET_THE_MAGI 8 + SV_AMULET_REFLECTION 9 + SV_AMULET_CARLAMMAS 10 + SV_AMULET_INGWE 11 + SV_AMULET_DWARVES 12 + SV_AMULET_NO_MAGIC 13 + SV_AMULET_NO_TELE 14 + SV_AMULET_RESISTANCE 15 + SV_AMULET_NOTHING 16 + SV_AMULET_SERPENT 17 + SV_AMULET_TORIS_MEJISTOS 18 + SV_AMULET_ELESSAR 19 + SV_AMULET_EVENSTAR 20 + SV_AMULET_SUSTENANCE 21 + SV_AMULET_TELEPATHY 22 + SV_AMULET_TRICKERY 23 + SV_AMULET_WEAPONMASTERY 24 + SV_AMULET_DEVOTION 25 + SV_AMULET_INFRA 26 + SV_AMULET_SPELL 27 + SV_AMULET_WISDOM 28 + SV_AMULET_RESIST_ELEC 29 + SV_AMULET_REGEN 30 +~~~~~45 +/* The sval codes for TV_RING */ + SV_RING_WOE 0 + SV_RING_AGGRAVATION 1 + SV_RING_WEAKNESS 2 + SV_RING_STUPIDITY 3 + SV_RING_TELEPORTATION 4 + SV_RING_SPECIAL 5 + SV_RING_SLOW_DIGESTION 6 + SV_RING_FEATHER_FALL 7 + SV_RING_RESIST_FIRE 8 + SV_RING_RESIST_COLD 9 + SV_RING_SUSTAIN_STR 10 + SV_RING_SUSTAIN_INT 11 + SV_RING_SUSTAIN_WIS 12 + SV_RING_SUSTAIN_CON 13 + SV_RING_SUSTAIN_DEX 14 + SV_RING_SUSTAIN_CHR 15 + SV_RING_PROTECTION 16 + SV_RING_ACID 17 + SV_RING_FLAMES 18 + SV_RING_ICE 19 + SV_RING_RESIST_POIS 20 + SV_RING_FREE_ACTION 21 + SV_RING_SEE_INVIS 22 + SV_RING_SEARCHING 23 + SV_RING_STR 24 + SV_RING_INT 25 + SV_RING_DEX 26 + SV_RING_CON 27 + SV_RING_ACCURACY 28 + SV_RING_DAMAGE 29 + SV_RING_SLAYING 30 + SV_RING_SPEED 31 + SV_RING_BARAHIR 32 + SV_RING_TULKAS 33 + SV_RING_NARYA 34 + SV_RING_NENYA 35 + SV_RING_VILYA 36 + SV_RING_POWER 37 + SV_RING_RES_FEAR 38 + SV_RING_RES_LD 39 + SV_RING_RES_NETHER 40 + SV_RING_RES_NEXUS 41 + SV_RING_RES_SOUND 42 + SV_RING_RES_CONFUSION 43 + SV_RING_RES_SHARDS 44 + SV_RING_RES_DISENCHANT 45 + SV_RING_RES_CHAOS 46 + SV_RING_RES_BLINDNESS 47 + SV_RING_LORDLY 48 + SV_RING_ATTACKS 49 + SV_RING_NOTHING 50 + SV_RING_PRECONITION 51 + SV_RING_FLAR 52 + SV_RING_INVIS 53 + SV_RING_FLYING 54 + SV_RING_WRAITH 55 + SV_RING_ELEC 56 + SV_RING_DURIN 57 + SV_RING_SPELL 58 + SV_RING_CRIT 59 +~~~~~55 +/* The "sval" codes for TV_STAFF */ + SV_STAFF_SCHOOL 1 + SV_STAFF_NOTHING 2 +~~~~~65 +/* The "sval" codes for TV_WAND */ + SV_WAND_SCHOOL 1 + SV_WAND_NOTHING 2 +~~~~~66 +/* The "sval" codes for TV_ROD(Rod Tips) */ + SV_ROD_NOTHING 0 + SV_ROD_DETECT_DOOR 1 + SV_ROD_IDENTIFY 2 + SV_ROD_RECALL 3 + SV_ROD_ILLUMINATION 4 + SV_ROD_MAPPING 5 + SV_ROD_DETECTION 6 + SV_ROD_PROBING 7 + SV_ROD_CURING 8 + SV_ROD_HEALING 9 + SV_ROD_RESTORATION 10 + SV_ROD_SPEED 11 + SV_ROD_TELEPORT_AWAY 13 + SV_ROD_DISARMING 14 + SV_ROD_LITE 15 + SV_ROD_SLEEP_MONSTER 16 + SV_ROD_SLOW_MONSTER 17 + SV_ROD_DRAIN_LIFE 18 + SV_ROD_POLYMORPH 19 + SV_ROD_ACID_BOLT 20 + SV_ROD_ELEC_BOLT 21 + SV_ROD_FIRE_BOLT 22 + SV_ROD_COLD_BOLT 23 + SV_ROD_ACID_BALL 24 + SV_ROD_ELEC_BALL 25 + SV_ROD_FIRE_BALL 26 + SV_ROD_COLD_BALL 27 + SV_ROD_HAVOC 28 + SV_ROD_DETECT_TRAP 29 + SV_ROD_HOME 30 +~~~~~67 +/* The "sval" codes for TV_ROD_MAIN(Rods) */ + SV_ROD_WOODEN 10 + SV_ROD_COPPER 20 + SV_ROD_IRON 50 + SV_ROD_ALUMINIUM 75 + SV_ROD_SILVER 100 + SV_ROD_GOLDEN 125 + SV_ROD_MITHRIL 160 + SV_ROD_ADMANTITE 200 +~~~~~70 +/* The "sval" codes for TV_SCROLL */ + SV_SCROLL_DARKNESS 0 + SV_SCROLL_AGGRAVATE_MONSTER 1 + SV_SCROLL_CURSE_ARMOR 2 + SV_SCROLL_CURSE_WEAPON 3 + SV_SCROLL_SUMMON_MONSTER 4 + SV_SCROLL_SUMMON_UNDEAD 5 + SV_SCROLL_SUMMON_MINE 6 + SV_SCROLL_TRAP_CREATION 7 + SV_SCROLL_PHASE_DOOR 8 + SV_SCROLL_TELEPORT 9 + SV_SCROLL_TELEPORT_LEVEL 10 + SV_SCROLL_WORD_OF_RECALL 11 + SV_SCROLL_IDENTIFY 12 + SV_SCROLL_STAR_IDENTIFY 13 + SV_SCROLL_REMOVE_CURSE 14 + SV_SCROLL_STAR_REMOVE_CURSE 15 + SV_SCROLL_ENCHANT_ARMOR 16 + SV_SCROLL_ENCHANT_WEAPON_TO_HIT 17 + SV_SCROLL_ENCHANT_WEAPON_TO_DAM 18 + SV_SCROLL_ENCHANT_WEAPON_PVAL 19 + SV_SCROLL_STAR_ENCHANT_ARMOR 20 + SV_SCROLL_STAR_ENCHANT_WEAPON 21 + SV_SCROLL_RECHARGING 22 + SV_SCROLL_RESET_RECALL 23 + SV_SCROLL_LIGHT 24 + SV_SCROLL_MAPPING 25 + SV_SCROLL_DETECT_GOLD 26 + SV_SCROLL_DETECT_ITEM 27 + SV_SCROLL_DETECT_TRAP 28 + SV_SCROLL_DETECT_DOOR 29 + SV_SCROLL_DETECT_INVIS 30 + SV_SCROLL_DIVINATION 31 + SV_SCROLL_SATISFY_HUNGER 32 + SV_SCROLL_BLESSING 33 + SV_SCROLL_HOLY_CHANT 34 + SV_SCROLL_HOLY_PRAYER 35 + SV_SCROLL_MONSTER_CONFUSION 36 + SV_SCROLL_PROTECTION_FROM_EVIL 37 + SV_SCROLL_RUNE_OF_PROTECTION 38 + SV_SCROLL_TRAP_DOOR_DESTRUCTION 39 + SV_SCROLL_DEINCARNATION 40 + SV_SCROLL_STAR_DESTRUCTION 41 + SV_SCROLL_DISPEL_UNDEAD 42 + SV_SCROLL_MASS_RESURECTION 43 + SV_SCROLL_GENOCIDE 44 + SV_SCROLL_MASS_GENOCIDE 45 + SV_SCROLL_ACQUIREMENT 46 + SV_SCROLL_STAR_ACQUIREMENT 47 + SV_SCROLL_FIRE 48 + SV_SCROLL_ICE 49 + SV_SCROLL_CHAOS 50 + SV_SCROLL_RUMOR 51 + SV_SCROLL_ARTIFACT 52 + SV_SCROLL_NOTHING 53 + SV_SCROLL_SPELL 54 +~~~~~71 +/* The "sval" codes for TV_POTION */ + SV_POTION_WATER 0 + SV_POTION_APPLE_JUICE 1 + SV_POTION_SLIME_MOLD 2 + SV_POTION_BLOOD 3 + SV_POTION_SLOWNESS 4 + SV_POTION_SALT_WATER 5 + SV_POTION_POISON 6 + SV_POTION_BLINDNESS 7 + SV_POTION_INVIS 8 + SV_POTION_CONFUSION 9 + SV_POTION_MUTATION 10 + SV_POTION_SLEEP 11 + SV_POTION_LEARNING 12 + SV_POTION_LOSE_MEMORIES 13 + SV_POTION_RUINATION 15 + SV_POTION_DEC_STR 16 + SV_POTION_DEC_INT 17 + SV_POTION_DEC_WIS 18 + SV_POTION_DEC_DEX 19 + SV_POTION_DEC_CON 20 + SV_POTION_DEC_CHR 21 + SV_POTION_DETONATIONS 22 + SV_POTION_DEATH 23 + SV_POTION_INFRAVISION 24 + SV_POTION_DETECT_INVIS 25 + SV_POTION_SLOW_POISON 26 + SV_POTION_CURE_POISON 27 + SV_POTION_BOLDNESS 28 + SV_POTION_SPEED 29 + SV_POTION_RESIST_HEAT 30 + SV_POTION_RESIST_COLD 31 + SV_POTION_HEROISM 32 + SV_POTION_BESERK_STRENGTH 33 + SV_POTION_CURE_LIGHT 34 + SV_POTION_CURE_SERIOUS 35 + SV_POTION_CURE_CRITICAL 36 + SV_POTION_HEALING 37 + SV_POTION_STAR_HEALING 38 + SV_POTION_LIFE 39 + SV_POTION_RESTORE_MANA 40 + SV_POTION_RESTORE_EXP 41 + SV_POTION_RES_STR 42 + SV_POTION_RES_INT 43 + SV_POTION_RES_WIS 44 + SV_POTION_RES_DEX 45 + SV_POTION_RES_CON 46 + SV_POTION_RES_CHR 47 + SV_POTION_INC_STR 48 + SV_POTION_INC_INT 49 + SV_POTION_INC_WIS 50 + SV_POTION_INC_DEX 51 + SV_POTION_INC_CON 52 + SV_POTION_INC_CHR 53 + SV_POTION_AUGMENTATION 55 + SV_POTION_ENLIGHTENMENT 56 + SV_POTION_STAR_ENLIGHTENMENT 57 + SV_POTION_SELF_KNOWLEDGE 58 + SV_POTION_EXPERIENCE 59 + SV_POTION_RESISTANCE 60 + SV_POTION_CURING 61 + SV_POTION_INVULNERABILITY 62 + SV_POTION_NEW_LIFE 63 +~~~~~72 +/* The "sval" codes for TV_POTION2 */ + SV_POTION2_MIMIC_ABOMINATION 1 + SV_POTION2_MIMIC_WOLF 2 + SV_POTION2_MIMIC_APE 3 + SV_POTION2_MIMIC_GOAT 4 + SV_POTION2_MIMIC_INSECT 5 + SV_POTION2_MIMIC_SPARROW 6 + SV_POTION2_MIMIC_STATUE 7 + SV_POTION2_MIMIC_VAMPIRE 8 + SV_POTION2_MIMIC_SPIDER 9 + SV_POTION2_MIMIC_MANA_BALL 10 + SV_POTION2_MIMIC_FIRE_CLOUD 11 + SV_POTION2_MIMIC_COLD_CLOUD 12 + SV_POTION2_MIMIC_CHAOS_CLOUD 13 + SV_POTION2_CURE_LIGHT_SANITY 14 + SV_POTION2_CURE_SERIOUS_SANITY 15 + SV_POTION2_CURE_CRITICAL_SANITY 16 + SV_POTION2_CURE_SANITY 17 + SV_POTION2_CURE_WATER 18 +~~~~~80 +/* The "sval" codes for TV_FOOD */ + SV_FOOD_POISON 0 + SV_FOOD_BLINDNESS 1 + SV_FOOD_PARANOIA 2 + SV_FOOD_CONFUSION 3 + SV_FOOD_HALLUCINATION 4 + SV_FOOD_PARALYSIS 5 + SV_FOOD_WEAKNESS 6 + SV_FOOD_SICKNESS 7 + SV_FOOD_STUPIDITY 8 + SV_FOOD_NAIVETY 9 + SV_FOOD_UNHEALTH 10 + SV_FOOD_DISEASE 11 + SV_FOOD_CURE_POISON 12 + SV_FOOD_CURE_BLINDNESS 13 + SV_FOOD_CURE_PARANOIA 14 + SV_FOOD_CURE_CONFUSION 15 + SV_FOOD_CURE_SERIOUS 16 + SV_FOOD_RESTORE_STR 17 + SV_FOOD_RESTORE_CON 18 + SV_FOOD_RESTORING 19 + SV_FOOD_BISCUIT 32 + SV_FOOD_JERKY 33 + SV_FOOD_RATION 35 + SV_FOOD_SLIME_MOLD 36 + SV_FOOD_WAYBREAD 37 + SV_FOOD_PINT_OF_ALE 38 + SV_FOOD_PINT_OF_WINE 39 + SV_FOOD_ATHELAS 40 + SV_FOOD_GREAT_HEALTH 41 + SV_FOOD_FORTUNE_COOKIE 42 +~~~~~04 +/* The "sval" codes for TV_BATERIE */ + SV_BATERIE_POISON 1 + SV_BATERIE_EXPLOSION 2 + SV_BATERIE_TELEPORT 3 + SV_BATERIE_COLD 4 + SV_BATERIE_FIRE 5 + SV_BATERIE_ACID 6 + SV_BATERIE_LIFE 7 + SV_BATERIE_CONFUSION 8 + SV_BATERIE_LITE 9 + SV_BATERIE_CHAOS 10 + SV_BATERIE_TIME 11 + SV_BATERIE_MAGIC 12 + SV_BATERIE_XTRA_LIFE 13 + SV_BATERIE_DARKNESS 14 + SV_BATERIE_KNOWLEDGE 15 + SV_BATERIE_FORCE 16 + SV_BATERIE_LIGHTNING 17 + SV_BATERIE_MANA 18 + MAX_BATERIE_SVAL 18 +~~~~~09 +/* The "sval" codes for TV_CORPSE */ + SV_CORPSE_CORPSE 1 + SV_CORPSE_SKELETON 2 + SV_CORPSE_HEAD 3 + SV_CORPSE_SKULL 4 + SV_CORPSE_MEAT 5 +~~~~~115 +/* The "sval" codes for TV_DAEMON_BOOK */ + SV_DEMONBLADE 55 + SV_DEMONSHIELD 56 + SV_DEMONHORN 57 diff --git a/lib/mods/theme/help/dungeon.txt b/lib/mods/theme/help/dungeon.txt new file mode 100644 index 00000000..21c9651e --- /dev/null +++ b/lib/mods/theme/help/dungeon.txt @@ -0,0 +1,703 @@ +|||||oy +~~~~~02|Dungeons +#####R /----------------------------------------\ +#####R < The Dungeons and Places of Middle-earth > +#####R \----------------------------------------/ + + *****dungeon.txt*04[Symbols On Your Map] *****dungeon.txt*07[The Town and Buildings] + *****dungeon.txt*01[The Wilderness] *****dungeon.txt*06[In the Dungeon] + *****dungeon.txt*08[Objects] *****dungeon.txt*13[Mining] + *****dungeon.txt*12[Doors, Rooms, Staircases etc.] *****dungeon.txt*18[Pets] + *****dungeon.txt*14[Winning] *****dungeon.txt*15[Dying] + *****dungeon.txt*16[Where to get more help] + +After you have *****birth.txt*0[created your character], you will begin your ToME +adventure. Symbols appearing on your screen will represent the world's +walls, floor, objects, features, and creatures lurking about. In order +to direct your character through his adventure, you will enter single +character commands (see "*****command.txt*0[command.txt]"). + +~~~~~03|Symbols +~~~~~04|Identifying features +#####R=== Symbols On Your Map === + +Symbols on your map can be broken down into three categories: Features of +the world such as walls, floor, doors, and traps; Objects which can be +picked up such as treasure, weapons, magical devices, etc; and creatures +which may or may not move about the dungeon, but are mostly harmful to your +character's well being. + +Some symbols are used to represent more than one type of entity, and some +symbols are used to represent entities in more than one category. The "@" +symbol (by default) is used to represent the character. + +It will not be necessary to remember all of the symbols and their meanings. +The "slash" command ("/") will identify any character appearing on your map +(see "*****command.txt*0[command.txt]"). + +Note that you can use a *****command.txt*105["user pref file"] to change any of these symbols to +something you are more comfortable with. + + +#####G Features that do not block line of sight + + . A floor space 1 Entrance to General Store + . A trap (hidden) 2 Entrance to Armoury + ^ A trap (known) 3 Entrance to Weapon Smith + [[[[[y;] A glyph of warding 4 Entrance to Temple + [[[[[U'] An open door 5 Entrance to Alchemy Shop + [[[[[U'] A broken door 6 Entrance to Magic Shop + < A staircase up 7 Entrance to the Black Market + [[[[[y<] A quest exit 8 Entrance to your Home + [[[[[r<] A quest up level 9 Entrance to Bookstore + [[[[[U<] A shaft up [[[[[r>] A quest down level + > A staircase down [[[[[U>] A shaft down + [[[[[y>] A quest entrance [[[[[v>] Dungeon entrance + _ A fountain [[[[[D_] An empty fountain + * Straight road start/exit [[[[[B*] Section of the Straight Road + [[[[[b*] Section of the Straight Road [[[[[W*] Section of the Straight Road + [[[[[D*] Corrupted straight road [[[[[R*] An explosive rune + [[[[[B~] Stream of water (shallow) [[[[[b~] Stream of water (deep) + [[[[[u~] Tainted stream (water) [[[[[s#] Underground tunnel + [[[[[U#] Pool of lava (shallow) [[[[[r#] Pool of lava (deep) + [[[[[D#] Dark pit [[[[[u.] Dirt + [[[[[g.] Patch of Grass [[[[[W.] Ice + [[[[[y.] Sand [[[[[D.] Ash + [[[[[u.] Mud [[[[[v.] Nether mist + [[[[[r.] Floor [[[[[D0] Altar of Darkness + [[[[[R0] Altar of Force [[[[[B0] Altar of Winds + [[[[[W0] Altar of Being [[[[[v+] Void Jumpgate + [[[[[v;] Monster trap [[[[[B.] Glass wall + [[[[[w#] Illusion wall [[[[[g;] Grass with flowers + [[[[[w.] Cobblestone road [[[[[g#] Small tree + [[[[[w*] Town (in wilderness) [[[[[U^] Underground tunnel + [[[[[y+] A web + +#####G Features that block line of sight + + [[[[[w#] A secret door # A wall + [[[[[U+] A closed door % A mineral vein + [[[[[U+] A locked door [[[[[o*] A mineral vein + treasure + [[[[[U+] A jammed door [[[[[w:] A pile of rubble + [[[[[D#] A dead tree [[[[[W#] Ice wall + [[[[[G#] A tree [[[[[y#] Sand wall + [[[[[U^] A mountain chain [[[[[W^] High mountain chain + + +#####G Objects + + ! A potion (or flask) / A pole-arm + ? A scroll, book, map, parchment / Music instrument + ? A rune, runestone | An edged weapon + , A mushroom (or food) \ A hafted weapon or digger + - A wand, rod or rod tip } A sling, bow, or x-bow + _ A staff { A shot, arrow, bolt, boomerang + = A ring ( Soft armour/cloak + " An amulet [ Hard armour + $ Gold or gems ] Misc. armour + ~ Lites, Tools, Chests, etc ) A shield + ~ Junk, Sticks, Skeletons, etc ` Trapping kit, climbing set + ~ Stone, random artifact o Egg + * An essence & (unused) + +~~~~~05|Monsters +#####G Monsters + + $ Creeping Coins , Mushroom Patch + a Giant Ant A Maia/Vala + b Giant Bat B Bird + c Cattle C Canine + d Dragon D Ancient Dragon + e Floating Eye E Elemental + f Feline F Dragon Fly + g Golem G Ghost + h Humanoids H Hybrid + i Mewlip I Insect + j Jelly J Snake + k Dwarf K Killer Beetle + l Giant Louse L Lich + m Mold M Multi-Headed Hydra + n Naga N (unused) + o Orc O Ogre + p Human P Giant Human(oid) + q Quadruped Q Quylthulg + r Rodent R Reptile/Amphibian + s Skeleton S Spider/Scorpion/Tick + t Townsperson T Troll + u Minor demon U Major demon + v Vortex V Vampire + w Worm or Worm Mass W Wight/Wraith + x (unused) X Xorn/Xaren + y Yeek Y Strange Humanoid + z Zombie/Mummy Z Zephyr Hound + + +~~~~~07|Town +#####R=== The Town Level === + +The town level is where you will begin your adventure. The town consists of +several buildings (most with an entrance), some townspeople, and a main wall +which surrounds the town (with gates in it). Outside the gates may be found +unclaimed lands and wilderness, where beasts still run wild. The first time +you are in town it will be daytime (unless you are an undead character), but +note that the sun will rise and set (rather instantly) as time passes. + +There are a few different towns around the world map, and your starting town +will eventually become too small for you (if you survive the dangers of the +dungeon). Other towns will have some different facilities, and you can find +your way to other towns by reading the "Adventurer's Guide to Middle-earth" +parchment with which *every* character begins the game. + + +#####R=== Townspeople === + +The town contains many different kinds of people. There are the street +urchins, young children who will mob an adventurer for money, and seem to +come out of the woodwork when excited. Blubbering idiots are a constant +annoyance, but not harmful. Public drunks wander about the town singing, +and are of no threat to anyone. Sneaky rogues who work for the black +market are always greedily eyeing your backpack for potential new +'purchases'... And finally, what town would be complete without a +swarm of half drunk warriors, who take offense or become annoyed just for +the fun of it. + +Most of the townspeople should be avoided by the largest possible distance +when you wander from store to store. Fights will break out, though, so be +prepared. Since your character grew up in this world of intrigue, no +experience is awarded for killing the town inhabitants, though you may +acquire treasure. + +~~~~~21|Buildings +#####R=== Town Buildings === + +Your character will begin his adventure with some basic supplies, and some +extra gold with which to purchase more supplies at the town stores. + +You may enter any open store and barter with the owner for items you can +afford. When bartering, you enter prices you will pay (or accept) for some +object. You can either enter the absolute amount, or precede a number with +a plus or minus sign to give a positive or negative increment on your +previous offer. But be warned that the owners can easily be insulted, and +may even throw you out for a while if you insult them too often. [[[[[BTo enter] +[[[[[Ba store, simply move onto the entrance, which is represented by a number] +[[[[[Bfrom 1 to 9.] + +If you consistently bargain well in a store, that is, you reach the final +offer much more often than not, then the store owner will eventually +recognise that you are a superb haggler, and will go directly to the final +offer instead of haggling with you. Items which cost less than 10 gold +pieces do not count, as haggling well with these items is usually either +very easy or almost impossible. The more expensive the item is, the less +likely the store owner is to assume that you are a good haggler. Note that +you may disable haggling with a software option, though this will inflict a +10% "sales tax" on all purchases for which the store owner would have +required you to haggle. + +Once inside a store, you will see the name and race of the store owner, the +name of the store, the maximum amount of cash that the store owner will pay +for any one item, and the store inventory, listed along with tentative +prices, which will become "fixed" (at the "final offer") should you ever +manage to haggle a store owner down to his final offer. + +You will also see an (incomplete) list of available commands. Note that +many of the commands which work in the dungeon work in the stores as well, +but some do not, especially those which involve "using" objects. + +Stores do not always have everything in stock. As the game progresses, they +may get new items, so check back from time to time. Also, if you sell them +an item, it may get sold to a customer while you are adventuring, so don't +always expect to be able to get back everything you have sold. If you have +a lot of spare gold, you can purchase every item in a store, which will +induce the store owner to bring out new stock, and perhaps even retire. If +you are low on funds (and morals), you may attempt to steal an item from +the store, but beware -- if you are caught, the store owner will not let you +back in for a very long time. + +Store owners will not buy harmful or useless items. If an object is +unidentified, they will pay you some base price for it. Once they have +bought it they will immediately identify the object. If it is a good object, +they will add it to their inventory. If it was a bad bargain, they simply +throw the item away. In any case, you may receive some knowledge of the +item in case another is encountered. + +#####GThe General Store ("1") + The General Store sells foods, drinks, some clothing, torches, lamps, + oil, shovels, picks, and spikes. All of these items and some others + can be sold back to the General store for money. + +#####GThe Armoury ("2") + The Armoury is where the town's armour is fashioned. All sorts of + protective gear may be bought and sold here. + +#####GThe Weaponsmith's Shop ("3") + The Weaponsmith's Shop is where the town's weapons are fashioned. Hand + and missile weapons may be purchased and sold here, along with arrows, + bolts, and shots. + +#####GThe Temple ("4") + The Temple deals in healing and restoration potions, as well as bless + scrolls, word of recall scrolls, some approved priestly weapons, and + priest spell books. + +#####GThe Alchemy shop ("5") + The Alchemy Shop deals in all types of potions and scrolls. + +#####GThe Magic User's Shop ("6") + The Magic User's Shop deals in all sorts of rings, wands, amulets, and + staves, as well as spell books. + +#####GThe Black Market ("7") + The Black Market will sell and buy anything at extortionate prices. + However it occasionally has VERY good items in it. The shopkeepers are + not known for their tolerance... + +#####GYour Home ("8") + This is your house where you can store objects that you cannot carry + on your travels, or will need at a later date. + +#####GThe Bookstore ("9") + The Bookstore deals in all sorts of magical books. You can purchase + and sell spellbooks for spellcasters and priests here. + + +#####ROther Buildings +In addition to the basic stores, there are some special buildings that can be +found in some towns. These Buildings (represented by +'s) include: + +#####GMayor's Office/Castle + The home office for the town. Adventurers looking for work besides + exploring the dungeon should hunt in here. + +#####GPet Shop + Great place to purchase eggs and get pets. + +#####GThe Soothsayer + To discover what *****/afatespoi.txt*0[fates ("a")] lie in store for you. + +#####GThe Prancing Pony + Wine, dine, rest and relax! + +#####GThe Nest + Thunderlords are masters of teleportation, and will consent to bear you + to your chosen dungeon destination for a fee. + +#####GBeastmaster Shanty + For those who enjoy trophy hunting, and to research that strange animal + you saw during your adventures. + +#####GFighters Hall + The place to reforge weapons and armour. + +#####GRangers Guild + The place to reforge distance weapons and their ammunition. + +#####GLibrary + For information of all kinds. + +#####GGambling House + Read the *****/bgambling.txt*0[rules ("b")] before paying. The games are + not rigged, just naturally difficult. + +#####GTower of Magery/Wizards Spire + The wizards will identify your items or recharge your magical items for + a fee. + +#####GInner temple/Priests Circle + A place of healing. + +#####GPaladin guild + Some healing and enchantments available. + + +~~~~~1|Wilderness +#####R=== The Wilderness and the Wilderness Map === + +Between the towns, the hand of civilisation has not tamed the lands, and +wild creatures run rampant. This is another place that is worth exploring. +Hidden within the wilderness are several interesting locations, with the +four main ones for any adventurer - Barrow Downs, Mirkwood, Mordor and +Angband each being located at or near one of the main towns of Middle- +earth. These locations should be explored consecutively, as each one +increases in difficulty from the point where the previous dungeon finished. +A new character should not try to go at Mordor or Angband as their first +dungeon (well, not if you wish to survive your first step, anyway)! + +As well as these (and other) locations, the wilderness can be a good place +to go when you are seeking a change from the scenery of the dungeons, or just +a bit of fast experience. + +Be warned - some creatures found in the wilderness can be quite dangerous, +and travel through the wilderness can be time-consuming. If you are wishing +to simply move to another town, there is an overview map (called the +"Wilderness Map") that can be travelled through by going up "<" from the +town level. While travelling through this map, your character is still having +to actually walk through each square of the normal view, but you only see the +end result of them moving from one 4x4 panel to the next. As such, food +consumption will appear to be much higher in the Wilderness View than it is +normally, and it is recommended that you travel prepared. It is also possible +for the wild creatures within the wilderness to ambush you when travelling, +which will force you out of the Wilderness Map so that you can safely get +yourself out of trouble, before continuing on your way. + +All of the special locations can be seen as downstairs (">") on the +Wilderness Map and towns as "*"s. This makes it *much* easier to find your +way from one interesting place to another. + +The "Adventurer's Guide to Middle-earth" (a parchment with which *every* +character begins the game) contains details about the towns and some of +the dungeons, including rough directions on how to get there. + +~~~~~06|Dungeons|In the dungeon +#####R=== Within The Dungeon === + +Once your character is adequately supplied with food, light, armor, and +weapons, he is ready to enter Barrow Downs. Move on top of the ">" symbol +and use the "Down" command (">"). + +Your character will enter a maze of interconnecting staircases and finally +arrive somewhere on the first level of the dungeon. Each level of the +dungeon is fifty feet high (thus dungeon level "Lev 1" is often called +"50 ft"), and is divided into rectangular regions several times +larger than the screen. Once you leave a level by a +staircase, you will never again find your way back to that region of that +level, but there are an infinite number of other regions at that same "depth" +that you can explore later. So be careful that you have found all the +treasure before you leave a level, or you may never find it again! The +monsters, of course, can use the stairs, and you may eventually encounter +them again. + +In the dungeon, there are many things to find, but your character must +survive many horrible and challenging encounters to find the treasure lying +about and take it safely back to the town to sell. + +~~~~~23|Light +There are two sources for light once inside the dungeon: permanent light +which has been magically placed within rooms, and a light source carried by +the player (or some of the monsters). If neither is present, the character +will be unable to see. This will affect searching, picking locks, disarming +traps, reading scrolls, casting spells, browsing books, etc. So be very +careful not to run out of light! + +A character must wield a torch or lamp in order to supply his own light. A +torch or lamp burns fuel as it is used, and once it is out of fuel, it stops +supplying light. You will be warned as the light approaches this point. You +may use the "Fuel" command ("F") to refuel your lantern (with flasks of oil) +or your torch (with other torches), so it is a good idea to carry extra +torches or flasks of oil, as appropriate. There are rumours of objects of +exceptional power which glow with their own never-ending light. + +~~~~~08|Objects +#####R=== Objects Found In The Dungeon === + +The mines are full of objects just waiting to be picked up and used. How +did they get there? Well, the main source for useful items are all the +foolish adventurers (like you?) that proceeded into the dungeon before you. +They get killed, and the helpful creatures scatter the various treasures +throughout the dungeon. Most cursed items are placed there by the joyful evil +sorcerers, who enjoy a good joke when it gets you killed. + +You pick up objects by moving on top of them. You can carry up to 23 +different items in your backpack while wearing and wielding up to 12 others. +Although you are limited to 23 different items, each item may actually be a +"pile" of up to 99 similar items. If you somehow manage to stuff 24 items +into your pack, for example, by removing an item from your head while your +pack is full, then your pack will "overflow" and the most recently added +item will fall out and onto the ground. You will be warned about any command +that seems likely to induce this behaviour. + +You are, in addition, limited in the total amount of weight that you can +carry. As you approach this value, you become slower, making it easier for +monsters to chase you. Note that there is no upper bound on how much you can +carry, if you do not mind being slow. Your weight limit is determined by your +strength. + +Objects do not block the line of sight, but may stack on top of one another, +with the one on top hiding others beneath it. + + Q: I'm standing on a pile of items. How do I see what's in the pile + without picking it all up, moving it, or destroying it all? + A: 1. Stand on the pile in question + 2. Type shift + i (examine) + 3. Type - (examine items on floor) + 4. Type * (expand list of items on floor) + 5. (as needed) Type letter associated with item to look at it more + closely. + +Objects may also obscure stairs, Ways and void jumpgates. + + Q: I'm standing on a pile of items. Is there a command to see if + there is a stair beneath the pile? + A: Stairs, void jumpgates and Ways that obscured by clutter still + function. + You are advised to take a good hard look at your surroundings before + creating lots of dungeon clutter. You can see if there is a stair + beneath the pile with either of these methods: + 1. Pick up, move, or eliminate the pile. + 2. Press l (look), then select the square you wish to inquire about. + Press <enter>; it will scroll through everything on the ground, + and eventually it ends with "It is in a Void Jumpgate", or + whatever. + + +Many objects found within the dungeon have special commands for their use. +Wands must be Aimed, staves must be Used, scrolls must be Read, and potions +must be Quaffed. You may, in general, not only use items in your pack, but +also items on the ground, if you are standing on top of them. For a detailed +list of the commands to use objects, see *****command.txt*0[command.txt]. + +Chests are complex objects, containing traps, locks, and possibly treasure +or other objects inside them once they are opened. Many of the commands that +apply to traps or doors also apply to chests and, like traps and doors, these +commands do not work if you are carrying the chest. + +One item in particular will be discussed here. [[[[[BThe scroll of "Word of] +[[[[[BRecall"] can be found within the dungeon, or bought at the temple in +town. It acts in two manners, depending upon your current location. If read +within the dungeon, it will teleport you back to town. If read in town, it +will teleport you back down to the deepest level of the dungeon to which your +character has previously journeyed. This makes the scroll very useful for +getting back to the deeper levels of the dungeon. Once the scroll has been +read it takes a while for the spell to act, so don't expect it to save you +in a crisis. Reading a second scroll before the first has had a chance to +take effect will cancel both scrolls. Since an accidental dive to a new depth +(via a trapdoor, for example), may result in the Word of Recall dungeon depth +being 'broken', so to speak (meaning that the next Word of Recall in town +will take you back deeper than you would like to), there is a feature in +ToME which allows you to read a scroll of Word of Recall on a different +level and 'reset' the recall depth to that level (instead of the deepest +level). Some dungeons cannot be recalled into, though you can still recall +out. + +You may "inscribe" any object with a textual inscription of your choice. +These inscriptions are not limited in length, though you may not be able to +see the whole inscription on the item. The game applies special meaning to +inscriptions containing any text of the form "@#" or "@x#" or "!x" or "!*", +see "*****command.txt*0[command.txt]" and "*****macrofaq.txt*0[macrofaq.txt]". + +The game provides some "fake" inscriptions to help you keep track of your +possessions. Wands and staves which are known to be empty will be inscribed +with "empty". Objects which have been tried at least once but haven't been +identified yet will be inscribed with "tried". Cursed objects are inscribed +with "cursed". Broken objects may be inscribed with "broken". Also, any +item which was purchased at a discount, implying that it is slightly +"sub-standard", will be inscribed with the appropriate "discount", such as +"25% off". Note that these inscriptions are fake, and cannot be removed, +though they can be covered up by a real inscription if you so desire. Try +"_" as a nice short one. + +Also, occasionally you will notice that something in your inventory or +equipment list seems to be magical. High level characters are much more +likely to notice this than beginning characters. When you do notice this, +the item in question will be inscribed with "good" or "cursed" as is +relevant. You can increase your ability to notice magical effects of armour +and weapons by increasing the *****skills.txt*01[Combat] skill. You can increase your ability +to sense particularly well enchanted magical items (potions, scrolls. wands +etc) by increasing your *****skills.txt*21[Magic] skill. If you increase these +high enough, you will gain a special method of "sensing" your +inventory/equipment items, which tells you not only whether an item is "good" +or "cursed", but also if it is "average", "special", "excellent", "terrible" or +"worthless". + +~~~~~21|Objects|Colour of inventory slot letter +The colour of the letter that identifies each item in your backpack can tell +you something about their magical status. Grey indicates the item has not been +identified yet. After identification, the colour changes to one of the +following: white, indicating it is normal; blue indicates it is an ego-item +(pseudo-id's as {excellent}); yellow indicates it is an artifact {special}; +green shows it is an artifact which is part of a set. + +It is rumoured that rings of power and extra rare spell books may be found +deeper in the dungeon.... + +And lastly, a final warning: not all objects are what they seem. The line +between tasty food and annoying mushroom is a fine one, and sometimes a +potion will reach out and bite you... +~~~~~09|Objects|Cursed Objects +~~~~~10|Cursed Objects +#####R=== Cursed Objects === + +Some objects, mainly armour and weapons, have had curses laid upon them. +These horrible objects will look like any other normal item, but will +detract from your character's stats or abilities if worn. They will also +be impossible to remove until the curse is removed. In fact some are +so badly cursed that even this will not work, and more potent methods are +needed. + +If you wear or wield a cursed item, you will immediately feel something +wrong. The item will also be inscribed "cursed". + +Shopkeepers will refuse to buy any known cursed item. +~~~~~13|Mining +~~~~~11|Dungeons|Mining +#####R=== Digging and Mining === + +It is possible for you to be trapped within the dungeon. You will not be able +to dig your way out without a digging tool (shovel, pick, or other means of +digging). It is absolutely essential to always carry some kind of digging tool, +even when you are not planning on tunnelling for treasure. Do not leave the +town level of Bree without a digger! + +Picks and shovels have a digging ability expressed as "(+<num>)", e.g. (+2). +The higher the number, the better the digging ability of the tool. Diggers are +effective against rubble, trees, and many walls. Rubble and veins may hide +treasure; trees do not. + +You dig in something with the tunnel (shift + t) command. Thorough digging +removes one ASCII square (i.e. tile) of what is being dug. This may require +multiple attempts depending on how good your digger is (and how high your +strength is). Once the square is removed, you will be informed if you found +anything there. If another diggable square exists beyond the area you just dug, +you can begin the process again. + +Some dungeons contain rich strikes which may be found only by mining it out of +the walls. Quartz veins are the richest, yielding the most metals and gems, but +magma veins may also hide hoards within them. When digging rock, granite is +much harder to dig through than quartz or magma veins, so it is much faster to +follow a vein exactly and dig around the granite. There is also a game option +for highlighting magma and quartz within the walls, which makes this easier. + +If the character has a scroll, staff, or spell of treasure location, she can +immediately locate all strikes of treasure within a vein shown on the screen. +This makes mining much easier and more profitable. +~~~~~12|Dungeons|Doors, Passages, Rooms and Staircases +#####R=== Staircases, Ways, Void jumpgates, Secret Doors, Passages, and Rooms === + +Staircases are the manner in which you get deeper or climb out of the +dungeon. The symbols for the up and down staircases are the same as the +commands to use them. A "<" represents an up staircase and a ">" represents +a down staircase. You must move your character over the staircase before +you can use it. You use it by typing the same character as the staircase +itself (either "<" or ">".) + +In flat environments such as forests, Ways replace staircases. On the map, Ways +are identical to staircases and behave the same way. + +Yellow down stairs and Ways are quest entrances (although not every quest +is reached by such means). + +Shafts are also represented by "<" or ">", but are brown. They work similarly +to stairs and Ways, but if you use one, you might traverse more than one +dungeon level all in one go as a result. + +Stairs, impenetrable walls, and shop entrances like titanium walls, and the +doors into shops, cannot be destroyed by any means (although their location can +occasionally change under the right circumstances). +~~~~~23|Void jumpgates +A void jumpgate appears on your map as a violet "+". Jumpgates always occur in +pairs. To activate a jumpgate, stand on it and type ">". You will instantly +appear on top of its paired jumpgate, which will be somewhere else on the same +dungeon level. + +Many secret doors are used within the dungeon to confuse and demoralise +adventurers foolish enough to enter. But with some luck, and lots of +concentration, you can find these secret doors. Secret doors will sometimes +hide rooms or corridors, or even entire sections of that level of the +dungeon. Sometimes they simply hide small empty closets or even dead ends. +Secret doors always look like granite walls, just like traps always look +like normal floors. + +Creatures in the dungeon will generally know and use these secret doors, and +can sometimes be counted on to leave them open behind them when they pass +through. + +For historical reasons, secret doors are never locked. + +~~~~~18|Pets +~~~~~19|Companions +~~~~~20|Monsters|Pets +#####R=== Pets and Companions === +You may, in the course of a game, acquire friendly monsters who will help you +defeat enemies. There are several different types of these, you can determine +which your monster is by 'l'ooking at it. +[[[[[vneutral] This monster will not help you by attacking other monsters, but nor + will it attack you. +[[[[[vco-aligned] This monster will attack other enemy monsters, but you will not + gain any experience for its kills. +[[[[[vpet] This monster will kill things for you. The amount of experience you gain + from its kills is determined by the level of your *****skills.txt*42[Monster-lore] skill. + This monster will gain levels and experience of its own, but cannot travel + between dungeon levels. +[[[[[vcompanion] This type of monster will not only take experience and level up like + pets, but will also follow you from one dungeon level to the next. If + you successfully complete an adventurer quest for a lost sword and let + him join you, he will become a companion. Once again the amount of + experience you gain from a companion's kill depends upon your + Monster-lore skill. + +Your Monster-lore skill also determines the maximum number of pets and +companions you can have at any one time. + +Pets, companions and co-aligned creatures cannot deliver killing blows to +uniques or quest monsters. You must do this yourself! + +You can give commands to pets and companions to make them more useful, using +the "P" command. The list of available commands is as follows: +[[[[[vdismiss companions] Dismisses your companions. They can be difficult to get rid + of any other way. +[[[[[vdismiss pets] Dismisses pets. You will be given the opportunity to dismiss all + current pets, or if you answer no to that first question, to + dismiss specific pets. +[[[[[vcall pets] Calls your pets (and companions) to you. +[[[[[vfollow me] Asks your pets (and companions) to follow you. They do have a mind of + their own, and may not be able to travel as fast as you can. +[[[[[vseek and destroy] Selecting this will cause your pets and companions to wander + further from you, looking for enemies to kill. +[[[[[vallow/disallow open doors] Selecting this toggles whether your pets and + companions can open doors. +[[[[[vallow/disallow pickup items] Selecting this toggles whether your pets and + companions can pick up items. Disallowing it will + cause the monster to drop any items he is carrying on + the floor. +[[[[[vgive target to a friend] Selecting this will cause one of your pets or + companions to attack your current target. +[[[[[vgive target to all friends] Causes all pets or companions to attack your + current target. +[[[[[vfriend forget target] All your friends will follow their normal attack + patterns, neglecting any targets you have given them. + +~~~~~14|Objectives +#####R=== Game Objectives === + +In ToME you will be required to complete a certain number of quests. Your +first quest is to discover the true nature of the evil lurking in the Tower of +Dol Guldur near Mirkwood. + +Each quest may lead on to others, and most quests can be postponed until when +you feel ready to tackle them. Simply explore other dungeons until you feel you +have gained enough experience to tackle your next task. Other quests are +optional and can be used for further experience. + +Once you have finished your final quest, when you are ready to retire, simply +"commit suicide" ("^Q") to have your character entered into the high score list +as a winner. Note that until you retire, you can still be killed, so you may +want to retire before wandering into a hoard of nasties.... + +You may also like to make a character sheet of your winning character (by +going through the "C"haracter screen and choosing "f"ile), and post in the +rec.games.roguelike.angband newsgroup with a text copy of the dump pasted +into the post. Include details about anything major that happened to your +character - did they find a ring of speed (+10) on dungeon level 2? Or had +they reached dungeon level 60 before finding their first artifact? Did you +have a really scary moment that stands out from the rest of the game? And how +*did* you actually win the game, anyway? + +~~~~~15|Dying +~~~~~17|Loading old characters +#####R=== Upon Death and Dying === + +If your character falls below 0 hit points, he has died and cannot be +restored (for most classes, anyway). A tombstone showing information about +your character will be displayed. You are also permitted to get a record of +your character, and all your equipment (identified) either on the screen or +in a file. + +Your character will leave behind a reduced save file, which contains only +the monster memory and your option choices. It may be restored, in which +case the new character is generated exactly as if the file was not there, +but the new player will find his monster memory containing all the experience +of past incarnations. + +In this way, death in ToME is permanent. You cannot simply 'reload at the last +save' as in most other contemporary games. Death is permanent, just as it is +in real life. + diff --git a/lib/mods/theme/help/dunspoil.txt b/lib/mods/theme/help/dunspoil.txt new file mode 100644 index 00000000..2da6d6b7 --- /dev/null +++ b/lib/mods/theme/help/dunspoil.txt @@ -0,0 +1,173 @@ +|||||oy +~~~~~01|Dungeons|Spoilers +~~~~~02|Spoilers|Dungeons +#####R=== ToME's DUNGEONS === + +There are numerous dungeons within Middle-earth, but not all +of them are required to be ventured into. The original Angband +dungeon has been split into 4 parts, each found near or at a +different town. Travel between towns is usually easiest by +using the wilderness overview map ("<" from the town level), +but remember to take lots of food with you! + +#####GThe Basic Dungeons +#####G------------------ + +#####G1. Barrow-Downs +Found near the outskirts of Bree (the starting town), this +dungeon is where you should begin your adventure. It +contains the main Dungeon levels 1 (50') to 10 (500'), +after which it becomes necessary for the character to seek +out a new dungeon in order to be able to descend further in +their quest to kill Morgoth. + +#####G2. Mirkwood +The Mirkwood forest contains levels 11 (550') to 33 (1650'), +and can be found to the north-east of Lothlorien. + +#####G3. Mordor +The Land of Mordor is a hot, cavernous region, containing +levels 34 (1700') to 66 (3300') of the dungeon. Located to +the East of Minas Anor, it is a place filled with danger, +and only a wary adventurer will make it through to the other +end of this dungeon. + +#####G4. Angband +Only the most successful of adventurers usually make it this +far. The Dungeon Angband contains both Sauron and Morgoth, +who will gladly wipe out any who dare to oppose them! This +dungeon covers levels 67 (3350') to 127 (6350'), but Sauron +waits for you at level 99, and Morgoth at level 100. This +dungeon can be found near Gondolin. + + +#####GAdditional ToME Dungeons +#####G------------------------ + +In addition to the basic 4 dungeons, there are numerous other +dungeons scattered around the world for an adventurer to explore +while preparing for the final fight. Many of the dungeons have a +guardian at the bottom of them, and a few have unique levels +somewhere within them (like an orc town) with guaranteed artifacts +and nasties within them. Other than the unique levels, all of the +dungeons can be exited and re-entered at your leisure. + +Be warned though that some dungeons are partly toxic to the +adventurer, and will damage you BY THEMSELVES just by you walking +within them! + +#####GOrc Cave +A dark tunnel leading to an Orc Cave, guarded at its base by Azog, +King of the Uruk-Hai. Also somewhere within this dungeon is the +hidden special level called Deathwatch. +Equivalent to dungeon levels 10 to 22. + +#####GThe Old Forest +A Forest is a haven for many animals, both of the good variety, and +the bad. This forest is no exception. In the past, unsuccessful +attempts have been made to cultivate this land, and it is possible +that some of the towns may remain. It is also rumoured that Old Man +Willow has made his home here, and is the source of the Forest's +resistance to cultivation. +Equivalent to dungeon levels 13 to 25. + +#####GHelcaraxe +The Grinding Ice of Helcaraxe is a bitterly cold series of caverns, +and guarded by the White Balrog. +Equivalent to dungeon levels 20 to 40. + +#####GThe Sandworm lair +A deep sandhole where most worms originated, it is guarded at its +base by the Sandworm Queen. +Equivalent to dungeon levels 22 to 30. + +#####GThe Heart of the Earth +A dark passage leading into the heart of the world, the Heart of +the Earth is the source of all the earth's changes. Some claim it +to be the home of Golgarach, the Living Rock, who assists in the +creation of new, ever-changing landforms. +Equivalent to dungeon levels 25 to 36. + +#####GMaze +A strange Maze where it becomes very difficult to remember where you +have been, it is guarded at the bottom by The Minotaur of the Labyrinth. +Equivalent to dungeon levels 25 to 37. + +#####GCirith Ungol +The dungeon Cirith Ungol is full of poisonous fumes rising from the +ground, and the land here looks diseased. Shelob is said to lurk +within these depths. +Equivalent to dungeon levels 25 to 50. + +#####GThe Land Of Rhun +The Land Of Rhun is located on a large plain, and has been taken over +by Ulfang the Black, Morgoth's first Easterling follower. +Equivalent to dungeon levels 26 to 40. + +#####GThe Mines of Moria +A stone door leads down to the depths of the Moria. Once the home of +the dwarves, the mines have been taken over by creeping evil things, and +unlucky adventurers may well stumble upon their training grounds. In +the depths lurks Durin's Bane, the Balrog of Moria, and return from +these depths can be difficult.... +Equivalent to dungeon levels 30 to 50. + +#####GThe Small Water Cave +A small water cave filled with salt water, which rusts and damages an +adventurer's equipment. This cave is not very deep, and is guarded by +The Watcher in the Water. +Equivalent to dungeon levels 32 to 34. + +#####GSubmerged Ruins +The lost land of Numenor lies submerged here. The salt water causes +everything to rust. These ruins are guarded by Ar-Pharazon the +Golden. +Equivalent to dungeon levels 35 to 50. + +#####GIllusory Castle +The Illusory Castle is a very strange and confusing place for an +adventurer to visit, and is rumoured to contain many strange +monsters. Deep within the castle can be found The Glass Golem. +Equivalent to dungeon levels 35 to 52. + +#####GPaths of the Dead +A dark underground graveyard, this place looks extremely dangerous. +It is claimed that the dead have all arisen in these depths, and are +lead by Feagwath, the Undead Sorcerer. +Equivalent to dungeon levels 40 to 70. + +#####GThe Sacred Land Of Mountains +The Sacred Land Of Mountains is located in a large mountain range, +with the remains of many old towns. Considered a perfect place to hide +for one who could fly, it is rumoured that Trone the rebel Thunderlord +fled into the ruins here. +Equivalent to dungeon levels 45 to 70. + +#####GThe Tower of Dol Guldur +The tower of of Dol Guldur is the last known residence of one known only +as "the Necromancer". It is rumoured to be filled with his conjurations, +although none have made it out of the Tower alive to confirm or deny this +rumour. +Equivalent to dungeon levels 57 to 70. + +#####GErebor, the Lonely Mountain +A big, dark and frightening tunnel leading to the depth of the Lonely +Mountain, this large cave is the ancestral home of the Dragons. +Glaurung, Father of the Dragons has long made his home here. +Equivalent to dungeon levels 60 to 72. + +#####GMount Doom +A steaming cave in the centre of Mount Doom, this place is *hot*. +It is said that Sauron forged the One Ring here and that it's the only place +where it could be destroyed. +Equivalent to dungeon levels 85 to 99. + +#####GNether Realm +The Nether Realm is accessible only through a magic portal. Also +known as Hell, this land is lethal to any who are unprepared for the +ravages of Nether, and is guarded by Tik'srvzllat. +#####BEquivalent to dungeon levels 666 to 696!!!!! + + + Created by Dawnmist for PernAngband 5.x.x + Updated for ToME 2.1.x diff --git a/lib/mods/theme/help/essences.txt b/lib/mods/theme/help/essences.txt new file mode 100644 index 00000000..f329fa80 --- /dev/null +++ b/lib/mods/theme/help/essences.txt @@ -0,0 +1,219 @@ +|||||oy +~~~~~01|Spoilers|Essences +~~~~~02|Alchemist|Essence Spoiler +#####REssence Spoiler for ToME 2.2.0 +#####R------------------------------ + +Essences are the tools of the trade for Alchemists, and unfortunately are +useless for any other class. Alchemists use essences to create magical +items for them to use. + +They can be either found on the floor while exploring the dungeon, or +extracted from other magical items the alchemist finds during his +adventures. + +To create an artifact, the alchemist will first have to have learnt the +Artifact Creation ability. This ability costs 70 skill points (yes, 70, +it's a very powerful ability!). And you need an alchemy skill of at least +40, plus INT and WIS at 35 (thats 18/170 in non-linear form). +To create the artifact, the alchemist will have to sacrifice 10 hit points, +and an amount of magic essence similar to his skill in alchemy. The +alchemist then allows the artifact to gain experience, and when it has +enough, uses that experience to add abilities to the artifact. The +alchemist can allow the artifact to continue to gain experience, thus +keeping open the option to add more abilities later. This requires a +similar amount of magic essence, but does not require the sacrifice of +more hit points. + +Note that the experience you gain is divided among the artifacts that you +have as well as going to yourself, so you will gain levels more slowly when +empowering artifacts. Also, the artifact only gets 60% of the experience. +So killing a creature worth 20xp would gain 10 for you, and 6 for the +artifact. + +You can also modify existing artifacts when you attain skill level 50. Also +at skill level 50 you will gain the ability to make temporary artifacts, +which don't require the complex empowerments that regular items require, +but also vanish after awhile. + +You cannot give an artifact an ability unless you have *Identified* an +artifact which has that ability. + +For every four levels gained in the alchemy skill, the alchemist learns +about objects of level (skill level)/4, starting by learning about level 1 +objects at skill level 0. (actually 1, but who's counting?) + +At skill level 5 you gain the ability to make ego items - but watch it! +Your base failure rate will be 90%, and won't be 0% until you reach skill +level 50. Adding gold will increase the chances of success in direct +proportion to the value of the item you are trying to create. Note that +this results in automatic success when the item you are trying to create +happens to pick up a curse in the process. + +At skill level 5 you also gain knowledge of some basic ego item recipes. +These are: Acidic, Shocking, Fiery, Frozen, Venomous, and Chaotic weapons, +Resist Fire armour, and light sources of Fearlessness. + +At skill level 10 you will gain knowledge of digging ego items, if you have +selected the option "always generate very unusual rooms" (ironman_rooms). + +At skill level 15 you can create ego wands, staves, rings, etc. + +At skill level 25 you gain the ability to empower double ego items. + +At skill level 50 you gain the ability to create temporary artifacts, which +don't require any exotic ingredients beyond a single corpse of any type. + +Between skill levels 25 and 50, you will steadily gain the ability to set +more and more flags. + +To finalise an artifact, you "P"ower it, and select the powers you want. +Powers are divided into the following six categories: +*****essences.txt*03[Stats, Sustains, Luck, Speed, Vision, etc.] +*****essences.txt*04[Misc. (Auras, Light, See Invisibility, etc.)] +*****essences.txt*05[Weapon Brands] +*****essences.txt*06[Resistances and Immunities] +*****essences.txt*07[ESP and Curses] +*****essences.txt*08[Artifact Activations] + +~~~~~03 +#####GStats, Sustains, Luck, Speed, Vision, etc. +lvl xp Power +40 5000 Add to Strength Ring of Strength +43 5000 Add to Intelligence Ring of Intelligence +46 5000 Add to Wisdom Amulet of Wisdom +46 5000 Add to Dexterity Ring of Dexterity +42 5000 Add to Constitution Ring of Constitution +30 5000 Add to Charisma Amulet of Adornment +32 1000 Sustain Strength Ring of Sustain Strength +34 1000 Sustain Intelligence Ring of Sustain Intelligence +28 1000 Sustain Wisdom Ring of Sustain Wisdom +36 1000 Sustain Dexterity Ring of Sustain Dexterity +36 1000 Sustain Constitution Ring of Sustain Constitution +25 1000 Sustain Charisma Ring of Sustain Charisma +40 50000 Speed Ring of Speed +38 150000 Extra Attacks Ring of Extra Attacks +32 5000 Stealthy Left Insole from a Used Soft Boot +29 2000 Adds to Searching Filthy Rag + 6 1000 Helps Infravision Brass Lantern +30 1000 Lucky Rabbit's Left Forefoot +25 30000 Aids in digging Pick +40 50000 Multiplies Life Troll's Heart + +~~~~~04 +#####GMisc. (Auras, Light, See Invisibility, etc.) +lvl xp Power +20 15000 Invisibility Potion of Invisibility +20 4000 See Invisible Potion of Invisibility +20 30000 Free Action Iron Spike +38 90000 Reflection Large Metal Shield +20 30000 Aura of Fire Lungs from an Ancient Red Dragon +25 30000 Aura of Lightning Lungs from an Ancient Blue Dragon + 8 1000 Light Everburning Torch +20 10000 Bright Light Dwarven Lantern +40 100000 Sunlight Feanorian Lamp +40 200000 Flight Suit of Dragon Armour (any colour) +50 10000000 Automatically IDs Morgoth's Testicles +29 2000 Anti-Teleportation Teleport Inhibiting Amulet +34 2000 Anti-Magic Magic Inhibiting Amulet +50 100000 Wraith Form Potion of Invulnerability +15 1000 Levitation Potion of Berserk Strength +20 10000 Slow Digestion Lembas Wafer +32 20000 Regenerate Mushroom of Unhealth +12 20000 Teleport Mushroom of Confusion + +~~~~~05 +#####GWeapon Brands +lvl xp Power +30 20000 Extra Critical Hits Whip +30 30000 Wounds Monsters Blade of Chaos +26 6000 Vampiric Rod Tip of Drain Life +16 2000 Slay Animal Dead Animal's Body +25 2000 Slay Evil Evil Dead Thing's Remains +30 2000 Slay Undead Remains of Undead Monster +40 1500 Slay Demon Demon's Corpse +10 700 Slay Orc Dead Orc +16 700 Slay Troll Dead Troll +25 900 Slay Giant Dead Giant +33 2000 Slay Dragon Dead Dragon (any size will do) +41 5000 *Slay* Dragon Mature Multi-Hued Dragon's Remains +41 90000 *Slay* Undead Dead Summoner of Greater Undead +41 90000 *Slay* Demon Lesser Balrog's Corpse +36 20000 Vorpal +40 90000 Earthquakes + 3 2000 Poison Brand +12 2000 Acid Brand +10 2000 Lightning Brand + 6 2000 Fire Brand + 8 2000 Frost Brand +30 3000 Extra Might (Bows Only) +35 3000 Extra Shots (Bows Only) + +~~~~~06 +#####GResistances and Immunities +lvl xp Power +49 500000 Immune to Acid Ancient Black Dragon's Foreskin +50 500000 Immune to Lightning Ancient Blue Dragon's Foreskin +49 500000 Immune to Fire Ancient Red Dragon's Foreskin +50 500000 Immune to Cold Ancient White Dragon's Foreskin +30 30000 Hold Life Amulet of the Magi +12 10000 Resist Acid Ring of Acid +15 10000 Resist Lightning Ring of Lightning +13 10000 Resist Fire Potion of Resist Heat +14 10000 Resist Cold Potion of Resist Cold +25 30000 Resist Poison Potion of Cure Poison +26 10000 Resist Fear Ring of Fear Resistance +31 60000 Resist Light Ring of Light and Darkness Resistance +31 60000 Resist Darkness Ring of Light and Darkness Resistance +30 30000 Resist Blindness Ring of Blindness Resistance +30 30000 Resist Confusion Ring of Confusion Resistance +30 60000 Resist Sound Ring of Sound Resistance +30 60000 Resist Shards Ring of Shard Resistance +30 60000 Resist Nether Ring of Nether Resistance +30 60000 Resist Nexus Ring of Nexus Resistance +30 60000 Resist Chaos Ring of Chaos Resistance +30 60000 Resist Disenchantment Ring of Disenchantment Resistance + +~~~~~07 +#####GESP and Curses +lvl xp Power +50 -100000 Temporary Item Corpse, any corpse +10 -2000 Self-Cursing Filthy Rag +45 -10000 Causes the Black Breath Sprig of Athelas +40 -5000 Ancient Curse Scroll of *Remove Curse* +40 -5000 Drains your Experience +30 -5000 Aggravates Monsters +30 -500 Curse Scroll of Remove Curse +50 -5000 Permanently Cursed +35 -2000 Can't be Dropped +45 -5000 Drains your Hit Points +20 -50000 Wielder Can't Move +40 20000 Telepathy Formerly Floating Eye +25 3000 Sense Orcs +25 3000 Sense Trolls +25 5000 Sense Dragons +25 5000 Sense Giants +25 5000 Sense Demons +25 5000 Sense Undead +25 5000 Sense Evil +25 5000 Sense Animals +25 5000 Sense Thunderlords +25 5000 Sense Good +25 5000 Sense Nonliving +25 5000 Sense Unique Monsters +25 2000 Sense Spiders + +~~~~~08 +#####GArtifact Activations +lvl xp Power +40 40000 Sunlight Brass Lantern +20 4000 Magic Missile (1) +30 300000 Magic Missile (2) +40 400000 Ball of Missiles +30 300000 Bolt of Lightning +30 300000 Ball of Lightning +35 350000 Ball of Lightning(2) +40 400000 Ball of Lightning(3) +40 400000 Ball of Lightning(4) +45 450000 Breath Lightning +50 40000 Fire a Rocket diff --git a/lib/mods/theme/help/experien.hlp b/lib/mods/theme/help/experien.hlp new file mode 100644 index 00000000..5e0bb9eb --- /dev/null +++ b/lib/mods/theme/help/experien.hlp @@ -0,0 +1,28 @@ +|||||oy +~~~~~01|Experience +#####RGaining experience +#####R============================================== + +The principle way for your character to gain experience (XP) is to kill +monsters. There are a few other ways too, like lockpicking, but these only +give small rewards. + +Once your character has gained enough experience to go up a level, then she +will be given skill points to spend as you see fit. These points can be +spent on either + + *****/askills.txt*0[(a) Skills] which improve more for each point you put into them, +or + *****/bability.txt*0[(b) Abilities] which are one-off purchases and grant your character new, + non-improvable powers + +Certain monsters can "drain" your experience, and thus your level. Although you +do not lose the skill points you've already gained, you also will not gain +further points until you reach a character level you have not already +achieved. Luckily, you can restore drained experience through magical means, +or by simply regaining the experience all over again. + + *****/ynewbie.hlp*0[(y) New player help menu] + *****/zhelp.hlp*0[(z) Main menu] + + diff --git a/lib/mods/theme/help/explore.hlp b/lib/mods/theme/help/explore.hlp new file mode 100644 index 00000000..0c302ab8 --- /dev/null +++ b/lib/mods/theme/help/explore.hlp @@ -0,0 +1,16 @@ +|||||oy +~~~~~01|Help|Exploring menu +~~~~~02|Exploring menu +#####RWelcome to the ToME Help System. +#####R============================================== + +Please choose one of the following online help files: + + *****/acommand.txt*0[(a) Available commands] How to control your character + *****/battack.txt*0[(b) Attacking monsters] How to attack, elemental attacks and resistances etc + *****/cdungeon.txt*0[(c) Exploring the dungeons] Symbols on your map, mining, pets, objects + more + + *****/ynewbie.hlp*0[(y) New player help menu] + *****/zhelp.hlp*0[(z) Main menu] + +
\ No newline at end of file diff --git a/lib/mods/theme/help/fatespoi.txt b/lib/mods/theme/help/fatespoi.txt new file mode 100644 index 00000000..2815129e --- /dev/null +++ b/lib/mods/theme/help/fatespoi.txt @@ -0,0 +1,28 @@ +|||||oy +~~~~~01|Spoilers|Fates +~~~~~02|Fates (spoiler) +#####R Fate Spoiler +#####R Accurate for PernAngband 5.x.x +#####R by Dustin Ragan + +Numerous spirits inhabit the land of Arda, from the murderous barrow wights to +the enigmatic Tom Bombadil. These spirits usually are bound to a specific +geographic region, but there are exceptions to this rule. Sometimes one of +these spirits will take interest in an adventurer. This can either be very, +very good or very, very bad. These spirits will "rig" reality to ensure that +something happens--or doesn't happen. + +In order to attract the attention of a spirit, the adventurer must be somewhat +experienced, having attained at least the 11th level of experience. Every 10 +game turns, which corresponds to 1 normal speed player turn, there is a +1 in 50,000 chance of gaining a fate. When this fate is chosen, there is a +7/18 chance of being fated to find a specific mundane item on a specific +dungeon level. A more belligerent spirit will, 7/18 of the time, summon a +malicious monster to do battle on a specific dungeon level. There is a 1/9 +chance to be destined to find an artifact on a given level. There is also +a 1/18 chance that you will meet your demise on a given level. Finally, there +is a 1/18 chance of becoming invulnerable to attacks from mortals. + +Whenever a level is being chosen for a fate, it is always chosen within 20 +levels of your current recall depth. Items, monsters, and artifacts are all +generated up to 10 levels out of depth for your current recall depth. diff --git a/lib/mods/theme/help/foot.aux b/lib/mods/theme/help/foot.aux new file mode 100644 index 00000000..47328799 --- /dev/null +++ b/lib/mods/theme/help/foot.aux @@ -0,0 +1,4 @@ +</TT></PRE> +</FONT> +</body> +</html> diff --git a/lib/mods/theme/help/g_aule.txt b/lib/mods/theme/help/g_aule.txt new file mode 100644 index 00000000..89399179 --- /dev/null +++ b/lib/mods/theme/help/g_aule.txt @@ -0,0 +1,61 @@ +|||||oy +~~~~~01|Gods|Aule +~~~~~02|Aule +#####R === Aule the Smith === + +Aule the Smith is the inventor and smith of the Valar. +His most faithful followers are those of the class *****c_stonewr.txt*0[Stonewright]. + +#####GThe benefits of worshipping Aule the Smith +1. As you increase your piety, Aule will grant you a boost to your accuracy + and damage to a maximum of +5. +2. As your piety increases, he will grant you resistance to fire. +3. If you are praying to him at the time, there is a chance that he will + cast Stone Skin on you. +4. Aule likes Dwarves, Petty-dwarves, Gnomes, and Dark Elves. +4. Your piety will increase slightly more if you are wielding an axe or a hammer. + +#####GThe disadvantages of worshipping Aule the Smith +1. He doesn't like it if you kill dwarves of any kind. +2. Your piety will decrease over time unless you are a Dwarf, Petty-dwarf, + Gnome, or Dark-Elf. +3. He will completely abandon you if you wear The One Ring. +~~~~~~03|Aule|Prayers +#####GAule's Magic +Worshipping Aule the Smith gives the adventurer access to a set of special +spells that come directly from the hands of Aule. These spells use your piety +to cast rather than your spellpoints, and the level of spells that Aule will +permit you to use is determined by your Prayer skill - how skillful you are +in asking for his help without offending him! + +There is a special book - called the "The Earth Tome of Aule" which +contains instructions for the procedure for each of the prayers Eru will +grant. There are four prayers all told, which are: +1. [[[[[BFirebrand] (Level 1) + Imbues your melee weapon with fire to deal more damage. + At level 15 it spreads over a 1 radius zone around your target. + At level 30 it deals holy fire damage. +2. [[[[[BEnchant Weapon] (Level 10) + Tries to enchant a weapon to-hit. + At level 5 it also enchants to-dam. + At level 45 it enhances the special powers of magical weapons. + The might of the enchantment increases with level. +3. [[[[[BEnchant Armour] (Level 15) + Tries to enchant a piece of armour. + At level 20 it also enchants to-hit and to-dam. + At level 40 it enhances the special powers of magical armour + The might of the enchantment increases with level. +4. [[[[[BChild of Aule] (Level 20) + Summons a levelled Dwarven warrior to help you battle the forces + of Morgoth. + +Each of these spells can be increased in level both by improving your Prayer +skill, and by improving your Spell-power skill. + +In addition to his specific magic, Aule will also assist with your ability to +use some magic from the "standard" schools, in relation to how skilled you +are at Prayer. These schools are as follows: + + *****m_earth.txt*0[Earth School] at 1/3 the Prayer skill level. + *****m_fire.txt*0[Fire School] at 3/5 the Prayer skill level. +The spells from these schools are all cast using your normal spellpoints. diff --git a/lib/mods/theme/help/g_eru.txt b/lib/mods/theme/help/g_eru.txt new file mode 100644 index 00000000..113875b3 --- /dev/null +++ b/lib/mods/theme/help/g_eru.txt @@ -0,0 +1,65 @@ +|||||oy +~~~~~01|Gods|Eru +~~~~~02|Eru +#####R === Eru Iluvatar === + +Eru Iluvatar is the father of the Valar. His most faithful followers are those +of the class *****c_pr_eru.txt*0[Priest(Eru)]. + +#####GThe benefits of Worshipping Eru Iluvatar +1. As you increase your piety, Eru will grant you a boost to your wisdom. + Eventually he will also start increasing your ability to handle magical + power, resulting in a boost to your spellpoints. +2. If you are praying to him at the time, there is a chance that he will + deflect some blows from evil monsters (that increases with your level of + piety). +3. If you are praying to him at the time, there is a chance that he will + resurrect you from the dead (provided you are very pious!). +4. Your piety automatically increases over time if you are: + a) Not praying, and + b) Actively doing something (i.e. not resting or in the Wilderness map). + +#####GThe disadvantages of Worshipping Eru Iluvatar +1. He doesn't like it if you destroy blessed weapons. +2. You can only wield blunt or blessed weapons without penalty. +3. He doesn't like it if you kill monsters that are aligned with good. +4. He will completely abandon you if you wear The One Ring. +~~~~~~03|Eru|Prayers +#####GEru Iluvatar's Magic +Worshipping Eru Iluvatar gives the adventurer access to a set of special +spells that come directly from the hands of Eru. These spells use your piety +to cast rather than your spellpoints, and the level of spells that Eru will +permit you to use is determined by your Prayer skill - how skillful you are +in asking for his help without offending him! + +There is a special book called the "Holy Tome of Eru Iluvatar" which +contains instructions for the procedure for each of the prayers Eru will +grant. There are four prayers all told, which are: +1. [[[[[BSee the Music] (Level 1) + Allows you to 'see' the Great Music from which the world originates, + allowing you to see unseen things, and can be cast while blind. + At spell level 10 it allows you to see your surroundings. + At spell level 20 it allows you to cure blindness. + At spell level 30 it allows you to fully see all the level. +2. [[[[[BListen to the Music] (Level 7) + Allows you to listen to the Great Music from which the world originates, + allowing you to understand the meaning of things. + At spell level 14 it allows you to identify all your pack. + At spell level 30 it allows you to identify all items on the level. +3. [[[[[BKnow the Music] (Level 30) + Allows you to understand the Great Music from which the world originates, + allowing you to know the full abilities of things. + At spell level 10 it allows you to *identify* all your pack. +4. [[[[[BLay of Protection] (Level 35) + Creates a circle of safety around you. + +Each of these spells can be increased in level both by improving your Prayer +skill, and by improving your Spell-power skill. + +In addition to his specific magic, Eru will also assist with your ability to +use some magic from the "standard" schools, in relation to how skilled you +are at Prayer. These schools are as follows: + *****m_mana.txt*0[Mana School] at 1/2 the Prayer skill level. + *****m_divin.txt*0[Divination School] at 2/3 the Prayer skill level. + *****m_mind.txt*0[Mind School] at 1/3 the Prayer skill level. +The spells from these schools are all cast using your normal spellpoints. diff --git a/lib/mods/theme/help/g_mandos.txt b/lib/mods/theme/help/g_mandos.txt new file mode 100644 index 00000000..5e21553c --- /dev/null +++ b/lib/mods/theme/help/g_mandos.txt @@ -0,0 +1,56 @@ +|||||oy +~~~~~01|Gods|Mandos +~~~~~02|Mandos +#####R === Mandos === + +Mandos is the Doomsman of the Valar, rarely seen but much revered. His most faithful +followers are those of the class *****c_pr_mand.txt*0[Priest(Mandos)]. + +#####GThe benefits of worshipping Mandos +1. His followers are granted resistance to nether forces. +2. If your piety is sufficiently high, and you are praying to him, Mandos will prevent + the space-time continuum from being disrupted around you. +3. If you are very pious and praying, Mandos will grant you immunity to nether. +4. He likes it if you kill vampires. +5. He adores it if you kill vampire elves. +6. Your piety will slowly increase over time if you are not praying. +7. Mandos likes High Elves and Lost Souls. + +#####GThe disadvantages of worshipping Mandos +1. Mandos doesn't like Vampires and Demons. +2. He hates being disturbed, so praying will make you lose piety very quickly. +3. He hates it if you kill living elves of any kind. +4. He *hates* it if you kill elves who are friendly to you. +5. He absolutely detests it if you kill friendly spirits. +6. He will completely abandon you if you wear The One Ring. +~~~~~~03|Mandos|Prayers +#####GMandos' Magic +Worshipping Mandos gives the adventurer access to a set of special spells that come +directly from the hands of Mandos. These spells use your piety to cast rather than +your spellpoints, and the level of spells that Mandos will permit you to use is +determined by your Prayer skill - how skillful you are in asking for his help +without offending him! + +There is a special book - called the "Holy Tome of Mandos" which +contains instructions for the procedure for each of the prayers Mandos will +grant. There are four prayers all told, which are: +1. [[[[[BTears of Luthien] (Level 5) + Calls upon the spirit of Luthien to ask Mandos for healing and succour. +2. [[[[[BFeanturi] (Level 10) + Channels the power of Mandos to cure fear and confusion. + At level 20 it restores lost INT and WIS + At level 30 it cures hallucinations and restores a percentage of lost sanity. +3. [[[[[BTale of Doom] (Level 25) + Allows you to predict the future for a short time. +4. [[[[[BCall to the Halls] (Level 30) + Summons a leveled spirit from the Halls of Mandos to fight for you. + +Each of these spells can be increased in level both by improving your Prayer +skill, and by improving your Spell-power skill. + +In addition to his specific magic, Mandos will also assist with your ability to +use some magic from the "standard" schools, in relation to how skilled you +are at Prayer. These schools are as follows: + *****m_divin.txt*0[Divination School] at 1/3 the Prayer skill level. + *****m_tempo.txt*0[Temporal School] at 1/4 the Prayer skill level. +The spells from these schools are all cast using your normal spellpoints. diff --git a/lib/mods/theme/help/g_manwe.txt b/lib/mods/theme/help/g_manwe.txt new file mode 100644 index 00000000..4bbc85fd --- /dev/null +++ b/lib/mods/theme/help/g_manwe.txt @@ -0,0 +1,62 @@ +|||||oy +~~~~~01|Gods|Manwe +~~~~~02|Manwe +#####R === Manwe Sulimo === + +Manwe is the strongest of the Valar, next to Morgoth. His most faithful +followers are those of the class *****c_pr_man.txt*0[Priest(Manwe)]. + +#####GThe benefits of Worshipping Manwe Sulimo +1. As you increase your piety, Manwe will grant boosts to your speed (up to + a maximum boost of +7 speed). +2. If you are praying, Manwe likes it when you kill monsters that are aligned + with evil. +3. As your piety increases, Manwe will grant you the following abilities (in + order): + a) Levitation + b) Free Action (while praying) + c) Flying (while praying) +4. Manwe likes elves. + +#####GThe disadvantages of Worshipping Manwe Sulimo +1. Your piety slowly decreases with time, whether you are praying or not. +2. He doesn't like it if you kill monsters that are aligned with good. +3. He will completely abandon you if you wear The One Ring. +~~~~~03|Manwe|Prayers +#####GManwe Sulimo's Magic +Worshipping Manwe Sulimo gives the adventurer access to a set of special +spells that come directly from the hands of Manwe. These spells use your piety +to cast rather than your spellpoints, and the level of spells that Manwe will +permit you to use is determined by your Prayer skill - how skillful you are +in asking for his help without offending him! + +There is a special book called the "Holy Tome of Manwe Sulimo" which +contains instructions for the procedure for each of the prayers Manwe will +grant. There are four prayers all told, which are: +1. [[[[[BManwe's Blessing] (Level 1) + Manwe's Blessing removes your fears, blesses you and surrounds you with holy + light. + At spell level 10 it also grants heroism. + At spell level 20 it also grants super heroism. + At spell level 30 it also grants holy luck and life protection. +2. [[[[[BWind Shield] (Level 10) + It surrounds you with a shield of wind that deflects blows from evil + monsters. + At level 10 it increases your armour rating. + At level 20 it retaliates against monsters that melee you. +3. [[[[[BManwe's Call] (Level 20) + Manwe's Call summons a Great Eagle to help you battle the forces of + Morgoth. +4. [[[[[BAvatar] (Level 35) + It turns you into a full grown Maia. + +Each of these spells can be increased in level both by improving your Prayer +skill, and by improving your Spell-power skill. + +In addition to his specific magic, Manwe will also assist with your ability to +use some magic from the "standard" schools, in relation to how skilled you +are at Prayer. These schools are as follows: + *****m_air.txt*0[Air School] at 2/3 the Prayer skill level. + *****m_convey.txt*0[Conveyance School] at 1/2 the Prayer skill level. + *****m_meta.txt*0[Meta School] at 1/3 the Prayer skill level. +The spells from these schools are all cast using your normal spellpoints. diff --git a/lib/mods/theme/help/g_melkor.txt b/lib/mods/theme/help/g_melkor.txt new file mode 100644 index 00000000..d6033e72 --- /dev/null +++ b/lib/mods/theme/help/g_melkor.txt @@ -0,0 +1,65 @@ +|||||oy +~~~~~01|Melkor +~~~~~02|Gods|Melkor +#####R === Melkor Bauglir === + +Melkor Bauglir is Morgoth, the Dark Enemy. He once was the most powerful +of the Valar. His most faithful followers are those of the class *****c_pr_drk.txt*0[Dark Priest]. + +#####GThe benefits of Worshipping Melkor Bauglir + 1. As you increase your piety, Melkor will grant boosts to your strength, + constitution and charisma and will decrease intelligence and wisdom. + 2. As a follower of Melkor you are resistant to fire. + 3. If you are praying, Melkor may make you invisible and immune to fire. + 4. If you are praying, Melkor may cast Curse on your foes when you melee them. + 5. If you are praying, Melkor likes it when you kill monsters. + 6. If you are praying, Melkor *likes* it when you kill monsters that are + aligned with good. + 7. Melkor likes it if you quaff Potions of Corruption. + 8. Melkor likes the sacrifice of corpses and books at his altars. + 9. Melkor likes the permanent sacrifice of your own health at his altars. +10. Melkor hates elves. +11. Melkor grants access to the *****m_udun.txt*0[Udun] school of magic. +121. Melkor can summon undead and demons to help you when your life goes down. + +#####GThe disadvantages of Worshipping Melkor Bauglir +1. Your piety decreases with time. +2. Your piety decreases with time even more if you are praying. +3. He will completely abandon you if you destroy The One Ring. +~~~~~03|Melkor|Prayers +#####GMelkor Bauglir's Magic +Worshipping Melkor Bauglir gives the adventurer access to a set of special +spells that come directly from the hands of Melkor. These spells use your piety +to cast rather than your spellpoints, and the level of spells that Melkor will +permit you to use is determined by your Prayer skill - how skillful you are +in asking for his help without offending him! + +There is a special book called the "Corrupted Tome of Melkor" which +contains instructions for the procedure for each of the prayers Melkor will +grant. There are three prayers all told, which are: +1. [[[[[BCurse] (Level 1) + It curses a monster, reducing its melee power + At level 5 it can be auto-casted (with no piety cost) while fighting + if your piety is over 5000. + At level 15 it also reduces armor + At level 25 it also reduces speed + At level 35 it also reduces max life (but it is never fatal) +2. [[[[[BCorpse Explosion] (Level 10) + It makes corpses in an area around you explode for a percent of their hit + points as damage +3. [[[[[BMind Steal] (Level 20) + It allows your spirit to temporarily leave your own body, which will + be vulnerable, to control one of your enemies body + +Each of these spells can be increased in level both by improving your Prayer +skill, and by improving your Spell-power skill. + +In addition to his specific magic, Melkor will also assist with your ability to +use some magic from the "standard" schools, in relation to how skilled you +are at Prayer. This school is as follows: + *****m_mind.txt*0[Mind School] at 1/3 the Prayer skill level. + +Melkor also grants all of his followers access to the *****m_udun.txt*0[Udun] school of magic, +but only powerful mages are able to cast all of its spells. + +The spells from these schools are all cast using your normal spellpoints. diff --git a/lib/mods/theme/help/g_tulkas.txt b/lib/mods/theme/help/g_tulkas.txt new file mode 100644 index 00000000..2c05292a --- /dev/null +++ b/lib/mods/theme/help/g_tulkas.txt @@ -0,0 +1,45 @@ +|||||oy +~~~~~01|Tulkas +~~~~~02|Gods|Tulkas +#####R === Tulkas === + +Another of the Valar. His most faithful followers are *****c_palad.txt*0[Paladins]. + +#####GThe benefits of Worshipping Tulkas +1. As you increase your piety, Tulkas will grant boosts to your constitution + and your strength (up to a maximum of +3 each). +2. He likes it when you kill monsters that are aligned with evil. +3. He loves it when you kill evil monsters while praying. +4. He *adores* it when you kill demons while praying. +5. If you are praying, Tulkas may increase the damage you do in melee combat. + +#####GThe disadvantages of Worshipping Tulkas +1. When you are praying, your piety slowly decreases with time. +2. He will completely abandon you if you wear The One Ring. +~~~~~03|Tulkas|Prayers +#####GTulkas's Magic +Worshipping Tulkas gives the adventurer access to a set of special spells +that come directly from the hands of Tulkas. These spells use your piety to +cast rather than your spellpoints, and the level of spells that Tulkas will +permit you to use is determined by your Prayer skill - how skillful you are +in asking for his help without offending him! + +There is a special book called the "War Tome of Tulkas" which contains +instructions for the procedure for each of the prayers Tulkas will grant. +There are three prayers all told, which are: +1. [[[[[BDivine Aim] (Level 1) + It makes you more accurate in combat. + At spell level 20 all your blows are critical hits. +2. [[[[[BWhirlwind] (Level 10) + It allows you to spin around and hit all monsters nearby. +3. [[[[[BWave of Power] (Level 20) + It allows you to project a number of melee blows across a distance. + +Each of these spells can be increased in level both by improving your Prayer +skill, and by improving your Spell-power skill. + +In addition to his specific magic, Tulkas will also assist with your ability to +use some magic from one of the "standard" schools, in relation to how skilled +you are at Prayer. This school is as follows: + *****m_earth.txt*0[Earth School] at 4/5 the Prayer skill level. +The spells from this school are all cast using your normal spellpoints. diff --git a/lib/mods/theme/help/g_ulmo.txt b/lib/mods/theme/help/g_ulmo.txt new file mode 100644 index 00000000..59c3d6e9 --- /dev/null +++ b/lib/mods/theme/help/g_ulmo.txt @@ -0,0 +1,58 @@ +|||||oy +~~~~~01|Gods|Ulmo +~~~~~02|Ulmo +#####R === Ulmo === + +Ulmo is the Lord of Waters, he controls all the lakes, rivers, seas, and oceans +on Arda. His most faithful followers are those of the class *****c_pr_ulmo.txt*0[Priest(Ulmo)]. + +#####GThe benefits of worshipping Ulmo +1. Ulmo's followers can breathe underwater. +2. If your piety is sufficiently high and you are praying, Ulmo will grant + you resistance to poison. +3. If you are very pious and praying, Ulmo will grant you the ability + to breathe without air. +4. Ulmo likes it if you wield or carry tridents. +5. If you are not praying, your piety will increase automatically over time. +6. Ulmo likes the Edain, Dunedain, Druedain, and Rohirrim. + +#####GThe disadvantages of worshipping Ulmo +1. He doesn't like it if you kill aquatic creatures. +2. He hates it if you kill good, friendly, or unique aquatic creatures. +3. He doesn't like it if you use magic involving any kind of fire. +4. Ulmo hates Easterlings, Orcs, and Demons. +5. He will completely abandon you if you wear The One Ring. +~~~~~~03|Ulmo|Prayers +#####GUlmo's Magic +Worshipping Ulmo gives the adventurer access to a set of special spells that come +directly from the hands of Ulmo. These spells use your piety to cast rather than +your spellpoints, and the level of spells that Ulmo will permit you to use is +determined by your Prayer skill - how skillful you are in asking for his help +without offending him! + +There is a special book - called the "Water Tome of Ulmo" which +contains instructions for the procedure for each of the prayers Ulmo will +grant. There are four prayers all told, which are: +1. [[[[[BSong of Belegaer] (Level 1) + Channels the power of the Great Sea into your fingertips. + Sometimes it can blast through its first target. +2. [[[[[BDraught of Ulmonan] (Level 15) + Fills you with a draught with powerful curing effects, prepared by Ulmo himself. + At spell level 1 it cures blindness, poison, cuts and stunning + At spell level 10 it restores drained STR, DEX and CON + At spell level 20 it removes parasites and unwanted mimicry +3. [[[[[BCall of the Ulumuri] (Level 20) + Summons a leveled water spirit or elemental to fight for you. +4. [[[[[BWrath of Ulmo] (Level 30) + Conjures up a sea storm. + At spell level 30 it turns into a more forceful storm. + +Each of these spells can be increased in level both by improving your Prayer +skill, and by improving your Spell-power skill. + +In addition to his specific magic, Ulmo will also assist with your ability to +use some magic from the "standard" schools, in relation to how skilled you +are at Prayer. These schools are as follows: + *****m_water.txt*0[Water School] at 3/5 the Prayer skill level. + *****m_nature.txt*0[Nature School] at 1/2 the Prayer skill level. +The spells from these schools are all cast using your normal spellpoints.
\ No newline at end of file diff --git a/lib/mods/theme/help/g_varda.txt b/lib/mods/theme/help/g_varda.txt new file mode 100644 index 00000000..a5d28475 --- /dev/null +++ b/lib/mods/theme/help/g_varda.txt @@ -0,0 +1,54 @@ +|||||oy +~~~~~01|Gods|Varda +~~~~~02|Varda +#####R === Varda Elentari === + +Varda Elentari is the greatest Queen of the Valar. Her most faithful followers +are those of the class *****c_pr_varda.txt*0[Priest(Varda)]. + +#####GThe benefits of worshipping Varda Elentari +1. She grants her followers permanent light of radius 1. +2. As you increase your piety, Varda will grant you resistance to light + while praying. +3. Your piety will increase while you are in lit areas. +4. Varda loves when you use spells involving light. + +#####GThe disadvantages of worshipping Varda Elentari +1. Your piety will decrease while you are in dark places. +2. Varda dislikes evil races (Orcs, Trolls, Dragons, and Demons). +3. Your piety will slowly decrease while praying. +4. She will completely abandon you if you wear The One Ring. +~~~~~~03|Varda|Prayers +#####GVarda Elentari's Magic +Worshipping Varda Elentari gives the adventurer access to a set of special +spells that come directly from the hands of Varda. These spells use your piety +to cast rather than your spellpoints, and the level of spells that Varda will +permit you to use is determined by your Prayer skill - how skillful you are +in asking for her help without offending her! + +There is a special book - called the "Shining Tome of Varda" which +contains instructions for the procedure for each of the prayers Varda will +grant. There are four prayers all told, which are: +1. [[[[[BLight of Valinor] (Level 1) + Lights up a room. + At spell level 3 it starts damaging monsters. + At spell level 15 it starts creating a more powerful kind of light. +2. [[[[[BCall of Almaren] (Level 10) + Banishes evil beings. + At spell level 20 it dispels evil beings. +3. [[[[[BEvenstar] (Level 30) + Maps and lights the whole level. + At spell level 40 it maps and lights the whole level, in addition to + letting you know yourself better and identifying your whole pack. +4. [[[[[BStar Kindler] (Level 35) + Does multiple bursts of light damage. The power increases with level. + +Each of these spells can be increased in level both by improving your Prayer +skill, and by improving your Spell-power skill. + +In addition to her specific magic, Varda will also assist with your ability to +use some magic from the "standard" schools, in relation to how skilled you +are at Prayer. These schools are as follows: + *****m_mana.txt*0[Mana School] at 1/4 the Prayer skill level. + *****m_meta.txt*0[Meta School] at 1/3 the Prayer skill level. +The spells from these schools are all cast using your normal spellpoints. diff --git a/lib/mods/theme/help/g_yavann.txt b/lib/mods/theme/help/g_yavann.txt new file mode 100644 index 00000000..6e6937ca --- /dev/null +++ b/lib/mods/theme/help/g_yavann.txt @@ -0,0 +1,62 @@ +|||||oy +~~~~~01|Yavanna +~~~~~02|Gods|Yavanna +#####R === Yavanna Kementari=== + +Yavanna, the Giver of Fruits, created all plants and animals and awakened the +Ents to protect the forests of Arda. Kementari, Queen of the Earth, is her +surname. Her most faithful followers are the *****c_druid.txt*0[Druids]. + +#####GThe benefits of Worshipping Yavanna +1. As you increase your piety, Yavanna will grant you the ability to pass + trees while praying. +2. She makes you regenerate faster while praying on grass. +3. She likes it when you kill nonliving creatures, undead or demons. +4. She likes it if you charm animals (except evil ones). +5. Yavanna likes Ents. + +#####GThe disadvantages of Worshipping Yavanna +1. Your piety slowly decreases with time, whether you are praying or not. +2. She doesn't like it if you kill monsters while praying. +3. She hates it if you kill animals while praying. +4. She hates it if you hurt your animal pets. +5. She hates it if you burn or destroy trees with magic or allow monsters to + do so. +6. She will completely abandon you if you wear The One Ring. +~~~~~03|Yavanna|Prayers +#####GYavanna's Magic +Worshipping Yavanna gives the adventurer access to a set of special spells +that come directly from the hands of Yavanna. These spells use your piety to +cast rather than your spellpoints, and the level of spells that Yavanna will +permit you to use is determined by your Prayer skill - how skillful you are +in asking for her help without offending her! + +There is a special book called the "Forest Tome of Yavanna" which contains +instructions for the procedure for each of the prayers Yavanna will grant. +There are five prayers all told, which are: +1. [[[[[BCharm Animal] (Level 1) + Tries to tame animals in a zone around your target. +2. [[[[[BGrow Grass] (Level 10) + Creates a floor of grass around you. While on grass and praying, + a worshipper of Yavanna will know a greater regeneration rate. +3. [[[[[BTree Roots] (Level 15) + Creates roots deep in the floor from your feet, making you more stable and + able to do better attacks, but preventing any movement (even teleportation). + It also makes you recover from stunning almost immediately. +4. [[[[[BWater Bite] (Level 20) + Imbues your melee weapon with a natural stream of water. + At level 25, it spreads over a 1 radius zone around your target. +5. [[[[[BUproot] (Level 35) + Awakes a tree to help you battle the forces of Morgoth. + +Each of these spells can be increased in level both by improving your Prayer +skill, and by improving your Spell-power skill. + +In addition to her specific magic, Yavanna will also assist with your ability +to use some magic from the "standard" schools, in relation to how skilled you +are at Prayer. These schools are as follows: + *****m_earth.txt*0[Earth School] at 1/2 the Prayer skill level. + *****m_nature.txt*0[Nature School] at 1/2 the Prayer skill level. + *****m_water.txt*0[Water School] at 1/2 the Prayer skill level. + *****m_tempo.txt*0[Temporal School] at 1/6 the Prayer skill level. +The spells from these schools are all cast using your normal spellpoints. diff --git a/lib/mods/theme/help/gambling.txt b/lib/mods/theme/help/gambling.txt new file mode 100644 index 00000000..62352600 --- /dev/null +++ b/lib/mods/theme/help/gambling.txt @@ -0,0 +1,29 @@ +|||||oy +~~~~~01|Gambling +#####R=== Gambling Rules === + +#####GBetween : + Three 12-sided dice rolled; 2 black, 1 red. The red + die must be between both black to win. If the red die + matches a black die, you lose. Pays 3 to 1 +#####GCraps: + Two 6-sided dice are rolled. On first roll, a 7 or 11 + wins. A 2, 3 or 12 loses. Otherwise roll until the first + roll is matched (win) or a 7 is rolled (loss). Pays 2 to 1 +#####GWheel: + Pick a number from 0-9. If the number shows on wheel + after it stops spinning, you win. Pays 10 to 1 + +#####GSlots: + Three dice rolled. Matches win gold. + Numbers are: + 1=Lemon, 2=Orange, 3=Sword, 4=Shield, 5=Plum, 6=Cherry + Payoffs are as follows: + Cherry Cherry Lemon 2-1 Cherry Cherry Orange 3-1 + Cherry Cherry Sword 4-1 Cherry Cherry Shield 5-1 + Cherry Cherry Plum 6-1 + Lemon Lemon Lemon 4-1 Orange Orange Orange 16-1 + Sword Sword Sword 6-1 Shield Shield Shield 25-1 + Plum Plum Plum 9-1 Cherry Cherry Cherry 36-1 + + diff --git a/lib/mods/theme/help/general.txt b/lib/mods/theme/help/general.txt new file mode 100644 index 00000000..17dc187c --- /dev/null +++ b/lib/mods/theme/help/general.txt @@ -0,0 +1,39 @@ +|||||oy +~~~~~01|Help +#####R=== Using the Online Help === + +This help system has been designed to be read whilst in-game. Printing it off +will make it look clumsy and a little difficult to read. + +Any text in orange/yellow colour is likely to be a hyperlink, and pressing +<enter> while the link is active (yellow) will take you to the relevant page. +Navigate between viewable links by using the left-right keys. Some links also +have bracketed letters included in the links. Pressing these letters on your +keyboard will activate the link even if it is orange. + +The help files total over 850 kb, so there is a lot of information. They have +been designed to be browsed, but you may be looking for specific information, +in which case you should try looking at the alphabetical *****index.txt*0[index]. + +Here are all the relevant keypresses for navigating the help system. + +#####GKey | Action +------------------------------------------------------------------- +Escape | Leave the Online Help +Backspace | Return to previous Help File +Space | Advance 1 page (screen) +2, down arrow | Advance 1 line +8, up arrow | Back up 1 line +- | Back up 1 page (screen) +6, right arrow | Advance 1 link +4, left arrow | Back up 1 link +Return | Activate the selected link +# | Go to a specific line (defaults to line 0) +% | Go to a specific help file (defaults to help.hlp) += | Highlight lines containing a string (e.g. "word") +/ | Search for a string (e.g. "word") +------------------------------------------------------------------- + +There are other sources for help playing ToME. Try http://forum.t-o-m-e.net +and http://wiki.t-o-m-e.net . We also have an IRC channel #tome on the +worldirc and freenode networks (they are linked) which is fairly low traffic. diff --git a/lib/mods/theme/help/gods.txt b/lib/mods/theme/help/gods.txt new file mode 100644 index 00000000..60427e7e --- /dev/null +++ b/lib/mods/theme/help/gods.txt @@ -0,0 +1,42 @@ +|||||oy +~~~~~01|Gods +#####RThe Guide to the Gods. + +#####G1. Introduction + Everybody likes to have a little helping hand now and then. What +could be better than having a god on your side? But it's not quite that easy. +The gods won't help just any mortal who calls for help. You have to give them +a little something too. + +#####G2. How Do I Get in on This? + When you start a character, you get a choice of whether or not you +wish to begin worshipping a God (unless you're something like a priest - they +*must* start with a God to worship). If you do choose to be a follower of one +of the Gods, you will gain certain abilities provided you do not do things +that displease them. The measure of how happy your God is with you is your +Piety - the Pt stat is your measure of Piety. Different actions will allow you +to gain or lose Piety over time. You can change your mind about whom (if +anyone) to worship during the game by finding an *****tome_faq.txt*04[altar] of that God. + +#####G3. What about spells? +God-granted spells are also known as prayers, and are cast using Piety instead +of Mana. God-spells can be increased in level by improving either your Prayer +or Spell-power skill. The chance of successfully invoking a prayer depends +on the Prayer skill and your wisdom. + +Each God also grants access to standard magical spell schools; which school(s) +vary depending on the Gods' individual preferences. Spells from these schools +are cast using Mana, not Piety; and success depends on your intelligence, not +your wisdom. + +#####G4. So, Who Are These Gods? + In Theme, there are nine Gods you may choose to worship, being: +1. *****g_eru.txt*0[Eru Iluvatar] - the father of the Valar. +2. *****g_manwe.txt*0[Manwe Sulimo] - the greatest of the Valar, watching from atop Taniquetil. +3. *****g_ulmo.txt*0[Ulmo] - the second mightiest of the Valar, lord of all waters on Arda. +4 *****g_varda.txt*0[Varda Elentari] - Manwe's spouse, the most beloved by the Elves. +5. *****g_yavann.txt*0[Yavanna Kementari] - the Earth Queen who created plants and animals. +6. *****g_aule.txt*0[Aule the Smith] - the builder and inventor of the Valar. +7. *****g_tulkas.txt*0[Tulkas] - another of the Valar, Tulkas values strength and courage. +8. *****g_mandos.txt*0[Mandos] - the Doomsman of the Valar, wise and powerful. +9. *****g_melkor.txt*0[Melkor Bauglir] - the Dark Enemy himself, once the most powerful of the Valar. diff --git a/lib/mods/theme/help/head.aux b/lib/mods/theme/help/head.aux new file mode 100644 index 00000000..92e979d3 --- /dev/null +++ b/lib/mods/theme/help/head.aux @@ -0,0 +1,10 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<html> +<head> + <title>T.o.M.E. Documentation</title> + <meta name="description" content="ToME and TomeNET homepage. ToME is a roguelike dungeon exploration game, based on Angband."> + <meta name="keywords" content="angband, tome, tomenet, library, angband, official, roguelike"> +</head> +<body bgcolor="#000000" text="#FFFFFF" link="#CC0000" alink="#FF9900" vlink="#FFCC66"> +<FONT text="#CCCCCC"> +<PRE><TT> diff --git a/lib/mods/theme/help/help.hlp b/lib/mods/theme/help/help.hlp new file mode 100644 index 00000000..7c4b431f --- /dev/null +++ b/lib/mods/theme/help/help.hlp @@ -0,0 +1,33 @@ +|||||oy +~~~~~01|Help|Main Menu +~~~~~02|Main Menu +#####RWelcome to the ToME Online Help System. +#####R============================================== + +Please choose one of the following online help files: + + *****/ageneral.txt*0[(a) About this help system] + *****/bnewbie.hlp*0[(b) Help for new players] Skills, magic, races, classes + more + *****/cadvanced.hlp*0[(c) Help for more experienced players] Options, Macros, Automatizer etc + *****/dtome_faq.txt*0[(d) ToME FAQ] Common questions + + *****/sspoiler.hlp*0[(s) Spoiler menu] Dungeons, fates, luck, corruptions and stuff + + + *****/xindex.txt*0[(x) Alphabetical index] Trouble finding something? Try here + +#####GBasic keys: +Space | Advance 1 page (screen) +2, down arrow | Advance 1 line +8, up arrow | Back up 1 line +- | Back up 1 page (screen) +6, right arrow | Advance 1 link +4, left arrow | Back up 1 link +Return | Activate the selected link +Escape | Leave the Online Help +Backspace, ? | Return to previous Help File +# | Go to a specific line (defaults to line 0) +% | Go to a specific help file (defaults to help.hlp) += | Highlight lines containing a string (e.g. "word") +/ | Search for a string (e.g. "word") + diff --git a/lib/mods/theme/help/index.txt b/lib/mods/theme/help/index.txt new file mode 100644 index 00000000..c89a70b3 --- /dev/null +++ b/lib/mods/theme/help/index.txt @@ -0,0 +1,636 @@ +|||||oy +#####R /----------------------------------------\ +#####R < Help Index > +#####R \----------------------------------------/ + +This is the index of everything in the T.o.M.E. documentation. + +#####BHit a letter key to jump to the entries for that letter. + +Some entries in the index link to the same place as other entries. This is +intentional, so that the information you want is easy to find. + +Don't forget you can browse the help from the *****help.hlp*02[Main menu]. + +#####sSpotted a problem with the help files, or some content thats missing? +#####sContact fearoffours@t-o-m-e.net . + +~~~~~65 +*****/Aindex.txt*65[A] + *****birth.txt*81[Abbreviations] + *****birth.txt*20[AC] + *****birth.txt*17[AU] + *****tome_faq.txt*25[FF] + *****birth.txt*21[HP] + *****birth.txt*29[Pt] + *****birth.txt*24[SN] + *****birth.txt*26[SP] + *****ability.txt*01[Abilities] + *****ability.txt*07[Ammo creation] + *****ability.txt*05[Extra Max Blow 1] + *****ability.txt*06[Extra Max Blow 2] + *****ability.txt*10[Far reaching attack] + *****ability.txt*04[Perfect casting] + *****ability.txt*02[Spread blows] + *****ability.txt*08[Touch of death] + *****ability.txt*11[Trapping] + *****ability.txt*03[Tree walking] + *****ability.txt*12[Undead Form] + *****m_air.txt*02[Air Magic] + *****tome_faq.txt*03[Altars] + *****tome_faq.txt*37[Anti-magic Amulets and the Anti-magic shell] + *****c_unbel.txt*04[Antimagic] + *****c_archer.txt*01[Archer] + *****attack.txt*03[Armor] + *****birth.txt*19[Armor Class] + *****attack.txt*05[Resistances] + *****tome_faq.txt*18[Artifacts that activate but I cannot wear or wield] + *****c_ascet.txt*02[Ascetic] + *****c_assass.txt*01[Assassin] + *****attack.txt*01[Attacking Monsters] + *****attack.txt*06[Damage Effect type ] + *****attack.txt*04[Resistances] + *****birth.txt*48[Fighting ability] + *****birth.txt*50[Shooting] + *****g_aule.txt*02[Aule] + *****automat.txt*03[Auto destroy] + *****automat.txt*02[Auto pick-up] + *****automat.txt*01[Automatizer] + *****defines.txt*82[Defines] + *****automat.txt*04[Autosquelch] + *****c_axemas.txt*01[Axemaster] +~~~~~66 +*****/Bindex.txt*66[B] + *****rm_barb.txt*01[Barbarian] + *****c_bard.txt*01[Bard] + *****tome_faq.txt*36[Beginner strategy] + *****r_beorn.txt*01[Beorning] + *****birth.txt*84[Birth] + *****dungeon.txt*21[Buildings] +~~~~~67 +*****/Cindex.txt*67[C] + *****birth.txt*11[Character] + *****birth.txt*46[Abilities] + *****birth.txt*10[Ability tables] + *****birth.txt*23[Armor Class] + *****birth.txt*02[Characteristics] + *****birth.txt*01[Creating a Character] + *****birth.txt*22[Hit Points] + *****birth.txt*28[Mana] + *****birth.txt*31[Piety] + *****birth.txt*08[Race and Class Combinations] + *****birth.txt*25[Sanity Points] + *****birth.txt*09[Stat Bonus Table] + *****birth.txt*13[Stats 1] + *****birth.txt*39[Stats 2] + *****tome_faq.txt*34[Character choice is too confusing] + *****birth.txt*45[Charisma] + *****birth.txt*05[Classes] + *****c_archer.txt*02[Archer] + *****c_ascet.txt*02[Ascetic] + *****c_assass.txt*02[Assassin] + *****c_axemas.txt*02[Axemaster] + *****c_bard.txt*02[Bard] + *****c_clairv.txt*02[Clairvoyant] + *****birth.txt*68[Combinations with Race] + *****c_pr_drk.txt*02[Dark Priest] + *****c_demono.txt*02[Demonologist] + *****c_druid.txt*02[Druid] + *****c_geoman.txt*02[Geomancer] + *****c_hafted.txt*02[Haftedmaster] + *****c_lorema.txt*02[Loremaster] + *****c_mage.txt*02[Mage] + *****c_mercen.txt*02[Mercenary] + *****c_mimic.txt*02[Mimic] + *****c_mindcr.txt*02[Mindcrafter] + *****c_monk.txt*02[Monk] + *****c_necro.txt*02[Necromancer] + *****c_pacif.txt*02[Pacifist] + *****c_palad.txt*02[Paladin] + *****c_peacemag.txt*02[Peace-mage] + *****c_polear.txt*02[Polearmmaster] + *****c_posses.txt*02[Possessor] + *****c_pr_eru.txt*02[Priest - Eru] + *****c_pr_mand.txt*02[Priest - Mandos] + *****c_pr_man.txt*02[Priest - Manwe] + *****c_pr_ulmo.txt*02[Priest - Ulmo] + *****c_pr_varda.txt*02[Priest - Varda] + *****c_ranger.txt*02[Ranger] + *****c_rogue.txt*02[Rogue] + *****c_runecr.txt*02[Runecrafter] + *****c_sorcer.txt*02[Sorceror] + *****c_sniper.txt*02[Sniper] + *****birth.txt*77[Stat Bonuses] + *****c_stonewr.txt*02[Stonewright] + *****c_summon.txt*02[Summoners] + *****c_swordm.txt*02[Swordmasters] + *****c_symbia.txt*02[Symbiant] + *****c_trapper.txt*02[Trapper] + *****c_thaum.txt*02[Thaumaturgist] + *****c_unbel.txt*02[Unbeliever] + *****c_wainrid.txt*02[Wainrider] + *****c_warper.txt*02[Warper] + *****c_warrio.txt*02[Warrior] + *****rm_class.txt*01[Classical] + *****command.txt*99[Commands] + *****command.txt*116[Alteration commands] + *****command.txt*103[Command counts] + *****command.txt*111[Command descriptions ] + *****command.txt*129[Extras] + *****command.txt*123[Game status] + *****command.txt*128[Help] + *****command.txt*112[Inventory] + *****command.txt*121[Looking ] + *****command.txt*122[Messages] + *****command.txt*113[Movement] + *****command.txt*119[Object manipulation] + *****command.txt*100[Original keyset] + *****command.txt*126[Pref files] + *****command.txt*104[Repeating a command] + *****command.txt*114[Resting] + *****command.txt*101[Roguelike keyset] + *****command.txt*124[Saving and Exiting] + *****command.txt*115[Searching] + *****command.txt*102[Special keys] + *****command.txt*118[Spells and prayers] + *****command.txt*117[Terrain interaction] + *****command.txt*120[Throwing and missile weapons] + *****dungeon.txt*19[Companions] + *****birth.txt*43[Constitution] + *****m_convey.txt*02[Conveyance Magic] + *****corspoil.txt*01[Corruptions ] + *****c_clairv.txt*02[Clairvoyant] + *****c_archer.txt*03[Creating Ammo] + *****birth.txt*12[Creating a Character] + *****dungeon.txt*10[Cursed Objects] +~~~~~68 +*****/Dindex.txt*68[D] + *****attack.txt*09[Damage Effects] + *****r_drkelf.txt*01[Dark Elf] + *****c_pr_drk.txt*01[Dark Priest] + *****tome_faq.txt*29[Dark grey things are difficult to see] + *****debug.txt*99[Debug] + *****debug.txt*100[Command List] + *****debug.txt*111[Command descriptions ] + *****debug.txt*112[General] + *****defines.txt*81[Defines] + *****defines.txt*84[Svals] + *****defines.txt*85[Tvals] + *****r_demon.txt*01[Demon] + *****rm_adanrog.txt*01[Adanrog] + *****rm_aewrog.txt*01[Aewrog] + *****rm_cabrog.txt*01[Caborrog] + *****rm_drarog.txt*01[Draugrog] + *****rm_hurog.txt*01[Hurog] + *****rm_limrog.txt*01[Limrog] + *****rm_lygrog.txt*01[Lygrog] + *****rm_narrog.txt*01[Narrog] + *****rm_rawrog.txt*01[Rawrog] + *****rm_sarnrog.txt*01[Sarnrog] + *****c_demono.txt*01[Demonologist] + *****m_demono.txt*02[Demonology Magic] + *****version.txt*01[Development history] + *****birth.txt*41[Dexterity] + *****birth.txt*56[Disarming traps] + *****birth.txt*37[Display] + *****m_divin.txt*02[Divination Magic] + *****r_dragon.txt*01[Dragon] + *****rm_black.txt*01[Black] + *****rm_blue.txt*01[Blue] + *****rm_ether.txt*01[Ethereal] + *****rm_green.txt*01[Green] + *****rm_red.txt*01[Red] + *****rm_white.txt*01[White] + *****r_druadan.txt*01[Druadan] + *****c_druid.txt*01[Druid] + *****r_dunad.txt*01[Dunedain] + *****dungeon.txt*02[Dungeons] + *****dungeon.txt*12[Doors] + *****dungeon.txt*06[In the dungeon] + *****dungeon.txt*11[Mining] + *****dunspoil.txt*01[Spoilers] + *****r_dwarf.txt*01[Dwarf] + *****dungeon.txt*15[Dying] +~~~~~69 +*****/Eindex.txt*69[E] + *****r_eagle.txt*01[Eagle] + *****m_earth.txt*02[Earth Magic] + *****r_easterl.txt*01[Easterling] + *****r_elf.txt*01[Elf] + *****r_ent.txt*01[Ent] + *****spoil_faq.txt*24[Erebor spoiler] + *****g_eru.txt*02[Eru] + *****g_eru.txt*03[Prayers] + *****c_pr_eru.txt*03[Priest - Eru] + *****experien.hlp*01[Experience] + *****explore.hlp*02[Exploring menu] +~~~~~70 +*****/Findex.txt*70[F] + *****tome_faq.txt*02[FAQ - Spoiler free] + *****spoil_faq.txt*02[FAQ - contains spoilers] + *****tome_faq.txt*13[Prophets] + *****fatespoi.txt*02[Fates ] + *****m_fire.txt*02[Fire Magic] + *****inscrip.txt*01[Floor Inscriptions ] + *****tome_faq.txt*28[Floor tiles displaying incorrectly] + *****tome_faq.txt*05[Fountains] + *****tome_faq.txt*24[Fumblefingers quests] +~~~~~71 +*****/Gindex.txt*71[G] + *****gambling.txt*01[Gambling] + *****tome_faq.txt*30[Game ] + *****c_geoman.txt*01[Geomancer] + *****m_geoman.txt*02[Geomancy spells] + *****r_gnome.txt*01[Gnome] + *****gods.txt*01[Gods] + *****tome_faq.txt*04[Altars] + *****g_aule.txt*01[Aule] + *****g_eru.txt*01[Eru] + *****g_mandos.txt*01[Mandos] + *****g_manwe.txt*01[Manwe] + *****g_melkor.txt*01[Melkor] + *****birth.txt*30[Piety] + *****tome_faq.txt*23[Quest - Spoilers] + *****g_tulkas.txt*01[Tulkas] + *****g_ulmo.txt*01[Ulmo] + *****g_varda.txt*01[Varda] + *****g_yavann.txt*01[Yavanna] + *****birth.txt*16[Gold] +~~~~~72 +*****/Hindex.txt*72[H] + *****c_hafted.txt*01[Haftedmaster] + *****r_hafelf.txt*01[Half-Elf] + *****r_hafogr.txt*01[Half-Ogre] + *****general.txt*01[Help] + *****explore.hlp*01[Exploring menu] + *****tome_faq.txt*01[FAQ - Spoiler free] + *****magic.hlp*02[Magic] + *****help.hlp*01[Main Menu] + *****newbie.hlp*01[New players] + *****spoil_faq.txt*01[Spoiled FAQ] + *****rm_herm.txt*01[Hermit] + *****r_hielf.txt*01[High-Elf] + *****r_hobbit.txt*01[Hobbit] + *****tome_faq.txt*12[Homes] + *****r_human.txt*01[Human] +~~~~~73 +*****/Iindex.txt*73[I] + *****tome_faq.txt*35[I STILL keep dying] + *****tome_faq.txt*31[I keep dying] + *****dungeon.txt*04[Identifying features] + *****birth.txt*66[Infra-vision] + *****birth.txt*35[Intelligence] + *****birth.txt*85[Inventory - starting info] + *****tome_faq.txt*32[Invisible character] +~~~~~75 +*****/Kindex.txt*75[K] + *****macrofaq.txt*44[Keymaps] + *****macrofaq.txt*46[Macro recorder] + +~~~~~76 +*****/Lindex.txt*76[L] + *****dungeon.txt*23[Light] + *****dungeon.txt*17[Loading old characters] + *****c_lorema.txt*01[Loremaster] + *****rm_lsoul.txt*01[Lost Soul] + *****luckspoi.txt*01[Luck ] +~~~~~77 +*****/Mindex.txt*77[M] + *****macrofaq.txt*43[Macros] + *****macrofaq.txt*45[Macro recorder] + *****c_mage.txt*01[Mage] + *****magic.txt*03[Magic] + *****m_air.txt*01[Air School] + *****m_convey.txt*01[Conveyance School] + *****m_demono.txt*01[Demonology School] + *****m_divin.txt*01[Divination School] + *****m_earth.txt*01[Earth School] + *****m_fire.txt*01[Fire School] + *****m_geoman.txt*01[Geomancy] + *****magic.hlp*01[Index] + *****birth.txt*27[Mana] + *****m_mana.txt*01[Mana School] + *****m_meta.txt*01[Meta School] + *****m_mimic.txt*01[Mimicry] + *****m_mind.txt*01[Mind School] + *****m_mindcr.txt*01[Mindcraft] + *****m_music.txt*01[Music] + *****m_nature.txt*01[Nature School] + *****m_necrom.txt*01[Necromancy] + *****magic.txt*01[Schools] + *****m_symbio.txt*01[Symbiosis] + *****m_tempo.txt*01[Temporal School] + *****m_thaum.txt*01[Thaumaturgy] + *****m_udun.txt*01[Udun School] + *****magic.txt*04[Wands and Staves] + *****m_water.txt*01[Water School] + *****birth.txt*58[Magical Devices] + *****r_maia.txt*01[Maia] + *****help.hlp*02[Main Menu] + *****m_mana.txt*02[Mana Magic] + *****g_mandos.txt*02[Mandos] + *****g_manwe.txt*02[Manwe] + *****g_manwe.txt*03[Prayers] + *****c_pr_man.txt*03[Priest - Manwe] + *****tome_faq.txt*14[Mathilde] + *****g_melkor.txt*01[Melkor] + *****c_pr_drk.txt*03[Dark Priests] + *****g_melkor.txt*03[Prayers] + *****c_mercen.txt*02[Mercenary] + *****m_meta.txt*02[Meta Magic] + *****c_mimic.txt*01[Mimic] + *****m_mimic.txt*02[Mimicry powers] + *****m_mind.txt*02[Mind Magic] + *****c_mindcr.txt*01[Mindcrafter] + *****m_mindcr.txt*02[Mindcraft powers] + *****dungeon.txt*13[Mining] + *****birth.txt*18[Money] + *****c_monk.txt*01[Monk] + *****c_monk.txt*03[Monk attacks] + *****dungeon.txt*05[Monsters] + *****attack.txt*02[Attacking] + *****attack.txt*07[Monster Memory] + *****dungeon.txt*20[Pets] + *****tome_faq.txt*08[They are talking to me] + *****m_music.txt*02[Music] +~~~~~78 +*****/Nindex.txt*78[N] + *****m_nature.txt*02[Nature Magic] + *****c_necro.txt*01[Necromancer] + *****m_necrom.txt*02[Necromancy Magic] +~~~~~79 +*****/Oindex.txt*79[O] + *****dungeon.txt*14[Objectives] + *****dungeon.txt*08[Objects] + *****dungeon.txt*21[Colour of inventory slot letter] + *****dungeon.txt*09[Cursed Objects] + *****tome_faq.txt*33[Piles] + *****option.txt*05[Options] + *****option.txt*16[Automatizer] + *****option.txt*15[Autosave] + *****option.txt*13[Base Delay Factor] + *****option.txt*18[Cheating] + *****option.txt*09[Disturbance] + *****option.txt*19[Dump] + *****option.txt*11[Efficiency] + *****option.txt*10[Game-play] + *****option.txt*14[Hitpoint Warning] + *****option.txt*07[Ingame] + *****option.txt*08[Interface] + *****option.txt*06[Startup] + *****option.txt*12[ToME Options] + *****option.txt*17[Window Flags] + *****r_orc.txt*01[Orc] +~~~~~80 +*****/Pindex.txt*80[P] + *****c_pacif.txt*02[Pacifist] + *****c_palad.txt*01[Paladin] + *****c_peacemag.txt*02[Peace-mage] + *****birth.txt*62[Perception] + *****dungeon.txt*18[Pets] + *****r_pettyd.txt*01[Petty Dwarf] + *****c_polear.txt*01[Polearmmaster] + *****c_posses.txt*01[Possessor] + *****c_posses.txt*03[Possessor powers ] + *****command.txt*105[Pref files] + *****command.txt*109[Colors] + *****command.txt*127[Commands] + *****command.txt*107[Keymaps] + *****command.txt*106[Macros] + *****command.txt*110[Options] + *****command.txt*108[Visuals] + *****c_pr_eru.txt*01[Priest - Eru] + *****c_pr_mandos.txt*0[Priest(Mandos)] + *****c_pr_man.txt*01[Priest - Manwe] + *****c_pr_ulmo.txt*0[Priest(Ulmo)] + *****c_pr_varda.txt*0[Priest(Varda)] + *****c_priest.txt*01[Priests] +~~~~~82 +*****/Rindex.txt*82[R] + *****birth.txt*04[Race Modifiers] + *****birth.txt*79[Ability table] + *****rm_barb.txt*02[Barbarian] + *****rm_class.txt*02[Classical] + *****rm_herm.txt*02[Hermit] + *****rm_lsoul.txt*02[Lost Soul] + *****rm_skel.txt*02[Skeleton] + *****rm_spec.txt*02[Spectre] + *****birth.txt*76[Stat Bonuses] + *****rm_vamp.txt*02[Vampire] + *****rm_zomb.txt*02[Zombie] + *****birth.txt*03[Races] + *****birth.txt*78[Ability table] + *****r_beorn.txt*02[Beorning] + *****birth.txt*67[Combinations with class] + *****r_drkelf.txt*02[Dark Elf] + *****r_demon.txt*02[Demon] + *****r_dragon.txt*02[Dragon] + *****r_dunad.txt*02[Dunadan] + *****r_dwarf.txt*02[Dwarf] + *****r_eagle.txt*02[Eagle] + *****r_easterl.txt*02[Easterling] + *****r_elf.txt*02[Elf] + *****r_ent.txt*02[Ent] + *****r_gnome.txt*02[Gnome] + *****r_hafelf.txt*02[Half-Elf] + *****r_hafogr.txt*02[Half-Ogre] + *****r_hielf.txt*02[High-Elf] + *****r_hobbit.txt*02[Hobbit] + *****r_human.txt*02[Human] + *****r_druadan.txt*02[Druadan] + *****r_maia.txt*02[Maia] + *****r_orc.txt*02[Orc] + *****r_pettyd.txt*02[Petty Dwarf] + *****r_rohank.txt*02[RohanKnight] + *****birth.txt*75[Stat Bonuses] + *****r_troll.txt*02[Troll] + *****r_wodelf.txt*02[Wood Elf] + *****r_yeek.txt*02[Yeek] + *****tome_faq.txt*26[Random quests are not working] + *****tome_faq.txt*36[Random quests strategy] + *****c_ranger.txt*01[Ranger] + *****c_rogue.txt*01[Rogue] + *****r_rohank.txt*01[RohanKnight] + *****c_runecr.txt*01[Runecrafter] + *****c_runecr.txt*03[Runecrafter powers] + *****tome_faq.txt*11[Runes] +~~~~~83 +*****/Sindex.txt*83[S] + *****command.txt*125[Saving and Exiting] + *****birth.txt*52[Saving throw] + *****birth.txt*60[Searching] + *****birth.txt*63[Searching Ability] + *****birth.txt*61[Searching Frequency - Perception] + *****spoil_faq.txt*23[Secret Valley] + *****tome_faq.txt*09[Sentient weapons] + *****rm_skel.txt*01[Skeleton] + *****skills.txt*55[Skills] + *****skills.txt*27[Air] + *****m_air.txt*03[Air - Spell Info] + *****skills.txt*50[Antimagic] + *****c_unbel.txt*05[Antimagic powers] + *****skills.txt*08[Archery] + *****skills.txt*05[Axe-mastery] + *****skills.txt*18[Backstab] + *****skills.txt*13[Barehand-combat] + *****skills.txt*61[Bearform-combat] + *****skills.txt*12[Boomerang-mastery] + *****skills.txt*58[Boulder-throwing] + *****skills.txt*10[Bow-mastery] + *****skills.txt*01[Combat] + *****skills.txt*30[Conveyance] + *****m_convey.txt*03[Conveyance - Spell Info] + *****skills.txt*44[Corpse-preservation] + *****skills.txt*04[Critical-Hits] + *****skills.txt*11[Crossbow-mastery] + *****skills.txt*52[Demonology] + *****m_demono.txt*03[Demonology - Spell Info] + *****skills.txt*16[Disarming] + *****skills.txt*31[Divination] + *****m_divin.txt*03[Divination - Spell Info] + *****skills.txt*20[Dodging] + *****skills.txt*28[Earth] + *****m_earth.txt*03[Earth - Spell Info] + *****skills.txt*25[Fire] + *****m_fire.txt*03[Fire - Spell Info] + *****skills.txt*60[Geomancy] + *****m_geoman.txt*03[Geomancy - Spell Info] + *****skills.txt*06[Hafted-mastery] + *****skills.txt*57[List of skills] + *****skills.txt*21[Magic] + *****skills.txt*54[Magic-device] + *****skills.txt*24[Mana] + *****m_mana.txt*03[Mana - Spell Info] + *****skills.txt*29[Meta] + *****m_meta.txt*03[Meta - Spell Info] + *****skills.txt*47[Mimicry] + *****m_mimic.txt*03[Mimicry - mimicry powers] + *****skills.txt*33[Mind] + *****m_mind.txt*03[Mind - Spell Info] + *****skills.txt*41[Mindcraft] + *****m_mindcr.txt*03[Mindcraft - Spell Info] + *****skills.txt*42[Monster-lore] + *****skills.txt*59[Music] + *****m_music.txt*03[Music - Song Info] + *****skills.txt*34[Nature] + *****m_nature.txt*03[Nature - Spell Info] + *****skills.txt*35[Necromancy] + *****m_necrom.txt*03[Necromancy - Spell Info] + *****skills.txt*07[Polearm-mastery] + *****skills.txt*45[Possession] + *****c_posses.txt*04[Possession - Possessor powers ] + *****skills.txt*39[Prayer] + *****skills.txt*36[Runecraft] + *****c_runecr.txt*04[Runecrafting - Runecrafter powers] + *****skills.txt*56[Screen] + *****skills.txt*09[Sling-mastery] + *****skills.txt*14[Sneakiness] + *****skills.txt*23[Sorcery] + *****skills.txt*22[Spell-power] + *****skills.txt*38[Spirituality] + *****skills.txt*19[Stealing] + *****skills.txt*15[Stealth] + *****skills.txt*53[Stunning-blows] + *****skills.txt*43[Summoning] + *****c_summon.txt*04[Summoning - Summoning powers] + *****skills.txt*03[Sword-mastery] + *****skills.txt*46[Symbiosis] + *****m_symbio.txt*03[Symbiosis - Symbiotic Powers] + *****skills.txt*32[Temporal] + *****m_tempo.txt*03[Temporal - Spell Info] + *****skills.txt*37[Thaumaturgy] + *****m_thaum.txt*03[Thaumaturgy - Spell Info] + *****skills.txt*48[Udun] + *****m_udun.txt*03[Udun - Spell Info] + *****skills.txt*26[Water] + *****m_water.txt*03[Water - Spell Info] + *****skills.txt*02[Weaponmastery] + *****c_sniper.txt*02[Sniper] + *****c_sorcer.txt*01[Sorceror] + *****rm_spec.txt*01[Spectre] + *****spoiler.hlp*01[Spoilers] + *****corspoil.txt*02[Corruptions] + *****dunspoil.txt*02[Dungeons] + *****fatespoi.txt*01[Fates] + *****inscrip.txt*02[Floor Inscriptions] + *****spoil_faq.txt*20[God Quest - directions] + *****spoil_faq.txt*22[God Quest - how many] + *****spoil_faq.txt*21[God Quest - relic] + *****spoil_faq.txt*07[Lothlorien Poisoned water quest] + *****luckspoi.txt*02[Luck] + *****wishing.txt*01[Wishing] + *****birth.txt*82[Stats] + *****birth.txt*71[Bonus table] + *****birth.txt*44[Charisma] + *****birth.txt*42[Constitution] + *****birth.txt*40[Dexterity] + *****birth.txt*14[Display] + *****birth.txt*06[Individual explanations] + *****birth.txt*33[Intelligence] + *****birth.txt*32[Strength] + *****birth.txt*36[Wisdom] + *****magic.txt*05[Staves] + *****birth.txt*54[Stealth] + *****c_stonewr.txt*0[Stonewright] + *****tome_faq.txt*17[Strange items] + *****birth.txt*34[Strength] + *****c_summon.txt*01[Summoners] + *****c_summon.txt*03[Summoning] + *****defines.txt*12[Svals] + *****c_swordm.txt*01[Swordmasters] + *****c_symbia.txt*01[Symbiant] + *****c_symbia.txt*03[Naming your symbiote] + *****m_symbio.txt*02[Symbiosis Magic] + *****dungeon.txt*03[Symbols] +~~~~~84 +*****/Tindex.txt*84[T] + *****birth.txt*69[Tables] + *****birth.txt*74[Ability Tables] + *****birth.txt*70[Combinations of Race and Class] + *****c_monk.txt*04[Monk attacks] + *****birth.txt*72[Stat bonuses] + *****m_tempo.txt*02[Temporal Magic] + *****m_thaum.txt*02[Thaumaturgical Magic] + *****c_thaum.txt*01[Thaumaturgist] + *****whattome.txt*01[ToME - a General Description] + *****dungeon.txt*07[Town] + *****c_trapper.txt*02[Trapper] + *****r_troll.txt*01[Troll] + *****g_tulkas.txt*01[Tulkas] + *****c_palad.txt*03[Paladin] + *****g_tulkas.txt*03[Prayers] + *****defines.txt*83[Tvals] +~~~~~85 +*****/Uindex.txt*85[U] + *****m_udun.txt*02[Udun Magic] + *****g_ulmo.txt*02[Ulmo] + *****c_unbel.txt*01[Unbeliever] + *****c_unbel.txt*03[Antimagic] +~~~~~86 +*****/Vindex.txt*86[V] + *****rm_vamp.txt*01[Vampire] + *****g_varda.txt*02[Varda] + *****tome_faq.txt*16[Void jumpgates] + *****dungeon.txt*23[Void jumpgates] +~~~~~87 +*****/Windex.txt*87[W] + *****magic.txt*02[Wands] + *****c_wainrid.txt*02[Wainrider] + *****c_warper.txt*01[Warper] + *****c_warrio.txt*01[Warrior] + *****m_water.txt*02[Water Magic] + *****birth.txt*86[Weapons - starting info] + *****tome_faq.txt*27[Weird display] + *****dungeon.txt*1[Wilderness] + *****birth.txt*38[Wisdom] + *****r_wodelf.txt*01[Wood Elf] + *****tome_faq.txt*15[Wrists hurting] +~~~~~89 +*****/Yindex.txt*89[Y] + *****g_yavann.txt*01[Yavanna] + *****c_druid.txt*03[Druid] + *****g_yavann.txt*03[Prayers] + *****r_yeek.txt*01[Yeek] +~~~~~90 +*****/Zindex.txt*90[Z] + *****rm_zomb.txt*01[Zombie] diff --git a/lib/mods/theme/help/inscrip.txt b/lib/mods/theme/help/inscrip.txt new file mode 100644 index 00000000..517c81c2 --- /dev/null +++ b/lib/mods/theme/help/inscrip.txt @@ -0,0 +1,65 @@ +~~~~~01|Floor Inscriptions (spoiler) +~~~~~02|Spoilers|Floor Inscriptions +#####R=== Floor Inscriptions === + +It is possible to inscribe words on the floor in ToME. If you happen +to be lucky and inscribe a spell formula from another language, the inscription +will use the floor's mana to cast that spell when either you walk over it, a +monster walks over it, or both walk over it. Not all inscriptions are triggered +by monsters, and not all can be triggered by the player. + +In order to write an inscription in another language, you must first have found +and read a parchment with some of that language's words upon it. So, just +copying the inscriptions here won't work unless you have read the words on a +parchment first ;-). + +#####GLight up the Room +Inscription: 'ure nimir' (sun shine) +Parchment: Numenorean for Beginners (I) +Triggered by: Player, Monster. +Grid Mana Needed: 30 +Effect: Lights up the current room + +#####GDarkness in Room +Inscription: 'lomi gimli' (night stars) +Parchment: Numenorean for Beginners (II) +Triggered by: Player, Monster. +Grid Mana Needed: 10 +Effect: Casts the room into darkness + +#####GStorm +Inscription: 'dulgi bawiba' (black winds) +Parchment: Advanced Lessons of Numenorean +Triggered by: Player, Monster. +Grid Mana Needed: 40 +Effect: Electrical Ball of energy released around the inscription + +#####GProtection +Inscription: 'pedo mellon a minno' (say friend and enter) +Parchment: Advanced Lessons of Sindarin +Triggered by: Monster. +Grid Mana Needed: 8 +Effect: Prevents a monster from stepping on the affected square + +#####GDwarven summoning +Inscription: 'Baruk Khazad! Khazad aimenu!' (Axes of the Dwarves, the Dwarves + are upon you!) +Parchment: Khuzdul - The Hidden Tongue of the Dwarves +Triggered by: Player. +Grid Mana Needed: 100 +Effect: Generates friendly Dwarven Warriors to help your cause + +#####GOpen Chasm +Inscription: 'dunna hrassa' (black precipice) +Parchment: Nandorin for Dummies +Triggered by: Monster. +Grid Mana Needed: 50 +Effect: Creates a bottomless hole in the floor that monsters (and potentially + objects) fall down + +#####GBlast of Black Fire +Inscription: 'burz ghash ronk' (black fire pool) +Parchment: Advanced Lessons of Orcish +Triggered by: Player, Monster. +Grid Mana Needed: 60 +Effect: Releases a ball of Hellfire around the inscription diff --git a/lib/mods/theme/help/lua.hlp b/lib/mods/theme/help/lua.hlp new file mode 100644 index 00000000..ba61676a --- /dev/null +++ b/lib/mods/theme/help/lua.hlp @@ -0,0 +1,34 @@ +|||||oy +~~~~~01|Help|Lua scripting for ToME +#####R Welcome to the ToME Lua Help System. +#####R============================================= + +Please choose one of the following help files: + + *****/alua_intr.txt*0[(a) An Introduction to scripting] + *****/blua_pow.txt*0[(b) Adding a racial power (the 'U' menu)] + *****/clua_skil.txt*0[(c) Adding new skills (the 'm' menu)] + *****/dlua_ques.txt*0[(d) Adding a quest] + + + *****/elua_mon.txt*0[(e) Useful functions in monster.pkg] + *****/flua_play.txt*0[(f) Useful functions in player.pkg] + *****/glua_spel.txt*0[(g) Useful functions in spell.pkg] + *****/hlua_util.txt*0[(h) Useful functions in util.pkg] + + *****/ilua_gf.txt*0[(g) A list of GF_FOO flags] + + + *****/zhelp.hlp*0[(z) Main Help menu] + + + + + + + + + + + + diff --git a/lib/mods/theme/help/lua_gf.txt b/lib/mods/theme/help/lua_gf.txt new file mode 100644 index 00000000..000f4af5 --- /dev/null +++ b/lib/mods/theme/help/lua_gf.txt @@ -0,0 +1,45 @@ +|||||oy +#####R /--------------------------\ +#####R< A partial list of GF_FLAGS > +#####R \--------------------------/ + +GF_ARROW: arrows +GF_MISSILE: magic missiles +GF_MANA: mana +GF_LITE_WEAK: light +GF_DARK_WEAK: dark +GF_WATER: water +GF_PLASMA: plasma +GF_METEOR: meteors +GF_ICE: ice +GF_GRAVITY: gravity +GF_INERTIA: inertia +GF_FORCE: force +GF_TIME: pure time +GF_ACID: acid +GF_ELEC: lightning +GF_FIRE: flames +GF_COLD: cold +GF_POIS: poison +GF_LITE: pure light +GF_DARK: pure dark +GF_CONFUSION: confusion +GF_SOUND: sound +GF_SHARDS: shards +GF_NEXUS: nexus +GF_NETHER: nether +GF_CHAOS: chaos +GF_DISENCHANT: disenchantment +GF_KILL_WALL: wall destruction +GF_KILL_DOOR: door destruction +GF_KILL_TRAP: trap destruction +GF_STONE_WALL: wall creation +GF_MAKE_DOOR: door creation +GF_MAKE_TRAP: trap creation +GF_DESTRUCTION: destruction + +Back to the *****lua.hlp*0[lua help index] . + + [[[[[gThis file by fearoffours (fearoffours@moppy.co.uk)] + + diff --git a/lib/mods/theme/help/lua_intr.txt b/lib/mods/theme/help/lua_intr.txt new file mode 100644 index 00000000..ccb87067 --- /dev/null +++ b/lib/mods/theme/help/lua_intr.txt @@ -0,0 +1,133 @@ +|||||oy +#####R /----------------------------------------\ +#####R < Scripting for ToME with lua > +#####R \----------------------------------------/ + +So, you want to patch ToME eh? Maybe you've had a look at how the edit files +work, maybe even added your own race/class, but want to go further and add +new racial (U) or magic (m) powers. Well these help files will show a little +bit of how to do that. + +I am not a master at this kind of thing. I wrote a small script, with much +help from DarkGod, and he subsequently asked me to write these help files. I +was looking forward to when the lua help files came out so that I could look +at them myself. Little did I know I'd be asked to write them. Therefore I +apologise for any inaccuracies or errors that you find, and if you care to let +me know of any improvements which could be made (especially if you're an +experienced programmer/scripter), I'd love to know. Email me at +[[[[[gfearoffours@moppy.co.uk]. + +#####R=== The example scripts === + +These help files take the form of a tutorial, adding a line at a time to a +script, and explaining important concepts along the way. To see it all in +action, I strongly suggest that you download my example script pack from +[[[[[Ghttp://www.moppy.co.uk/angband.htm]. As well as including all the +scripts covered in these help files, they also include the addition of my +"hina" race which has a Lua scripted racial power which you might like to look +at. There's also a quest which I will be including documentation for as a +tutorial soon. Plus there's all the other lua scripts in the lib\scpt +directory to look at. Most of what you see in these files has been learned from +those files anyway! + +The source code is invaluable as well. There's a searchable and browsable +version of the latest ToME source code available online at +[[[[[Ghttp://www.t-o-m-e.net/cvs.php]. Use it! + +If you don't want to download and install the example scripts, then just +follow the tutorials with a text editor open! But I'll say it again, it's a lot +easier if you download and install the example scripts. + +This file goes on to explain the concepts of scripting, programming, +variables and functions. If you're familiar with these concepts, you might +as well take a look at how to add a power to the U menu in the +*****lua_pow.txt*0[Scripting a racial power] file. + + +#####R=== Defining some basic stuff === + +Computers don't do anything that they're not told to do. When we script, or +program, we must assume they know nothing. We have to tell them each little +bit of information from the ground up. + +A program, or a script (we'll talk about exact differences later) is like a +set of instructions. Let's imagine that people responded to programs, and +that we had a program called "Housework". Its series of instructions might +look something like this: + +#####BDo the Washing up. +#####BClean the kitchen. +#####BDust the shelves. +#####BHoover the lounge. + +Each step above could be called a function, as they are all actions that +need to be carried out. Now to you and me, we'd understand that program just +fine, but if someone didn't know HOW to wash, or what hoovering was, they'd +soon run into problems. For those people we'd need to define each function +clearly. Thus "do the washing up" might be - + +#####BRun hot water into bowl. +#####BAdd washing up liquid. +#####BPut dirty plates into bowl +#####BScrub plates till clean +#####BPlace clean plates on rack to dry, + +There's still plenty of problems here though. We've not said to turn the tap +off, or what the bowl is, or to wash any dirty cutlery, mugs, saucepans, etc., +etc. Whilst this might seem fairly obvious to a person, this is how we need +to think when writing programs for computers. + +Lets look now at some of the terms we're going to be using, in the rest of +these help files, and what they mean... + +#####R=== Variables and Constants === +A variable is a way to store information in a computer. Just as you store +things in your own memory, you can store things in the computer's memory. And +just as things change in your memory, so things can change in the computer's +memory. This factor of change is why they're called "variables" and not +"statics". + +For instance, you may have a friend's email address committed to memory, but +things change over time, they get a new ISP or domain, and so their email +address changes. You commit this new address to memory, and eventually +forget the old one. The thing you have stored in your memory is the same +(your friend's address) but the value (property) of what you have stored has +changed (from friend@old-address.com to friend@new-address.com). + +Variables are the building blocks out of which you will create your patch. + +A variable which will *never* change its value is called a constant. + +#####R===Functions=== + +A function is a series of steps or statements, grouped together and given +one name. When you want to carry out those steps, you simply ask the +computer to carry out that function. To go back to our original example, +rather than saying, "I'd like you to run some hot water into a bowl, add the +washing up liquid, put the dirty plates into it, and then scrub them till +they're clean", we just say "do the washing up". + +This is where we come to the difference between scripting and programming. +With scripting we can use the functions and variables that exist in the +ToME code. Maintainers like DarkGod have already made sure that the +computer knows how to "do the washing up", including turning the tap off and +what the bowl is. All we need to do in our script is say "do the washing +up". Or to look at it in a more relevant way, the game has been coded so +that when a magic missile is fired, a bolt or beam spell with a black line +of asterisks will be drawn in the direction indicated by the player, the +mana of that spell will be used up, the monster will take the appropriate +amount of damage, and so on. All we need to do in our script is say "fire a +magic missile". + +As you script, you will still be designing your own functions, and +variables, but the hardest parts have been done for you! + +Not every function and global variable in the source-code has been exported to +use in your scripting. But the ones that have are easily identifiable by +looking in any source files with the extension .pkg . Chris Hadgis has written +some excellent documentation which outline the use of the most important +functions in some of these files. They outline the functions from the + +OK, the first tutorial proper is on *****lua_pow.txt*0[adding a racial power] . + + [[[[[gThis file by fearoffours (fearoffours@moppy.co.uk)] diff --git a/lib/mods/theme/help/lua_mon.txt b/lib/mods/theme/help/lua_mon.txt new file mode 100644 index 00000000..9bb363c0 --- /dev/null +++ b/lib/mods/theme/help/lua_mon.txt @@ -0,0 +1,535 @@ +|||||oy + +#####R /----------------------------------------\ +#####R < monster.pkg functions helper file > +#####R \----------------------------------------/ + + +---------------------------------------------------------------------- + +#####R=== race_info_idx === + +#####GDeclaration + extern monster_race* race_info_idx(int r_idx, int ego); + +#####GFile + monster2.c + +#####GComment +/* + * Return a (monster_race*) with the combinations of the monster + * properties and the ego type + */ + +#####GDescription +Get monster info and ego info for monster with monster index "r_idx" +and monster ego "ego". The ego information is applied to the monster +information and the new monster information is returned. + +For example, race_info_idx(141,7) will create a brown yeek (monster) +shaman (ego). + +#####GParameters +> "r_idx" is an entry from the "r_info.txt" file. Beware: there is no + range checking. +> "ego" is an entry from the "re_info.txt". Beware: there is no range + checking. + +---------------------------------------------------------------------- + +#####R=== delete_monster_idx === + +#####GDeclaration + extern void delete_monster_idx(int i); + +#####GFile + monster2.c + +#####GComment +/* + * Delete a monster by index. + * + * When a monster is deleted, all of its objects are deleted. + */ + +#####GDescription +Delete monster "i" from the monster array. + +#####GParameters +> "i" is the index for the monster list (m_list[]). Beware: there is + no range checking. + +---------------------------------------------------------------------- + +#####R=== m_pop === + +#####GDeclaration + extern s16b m_pop(void); + +#####GFile + monsters2.c + +#####GComment +/* + * Acquires and returns the index of a "free" monster. + * + * This routine should almost never fail, but it *can* happen. + */ + +#####GDescription +Get an empty slot in the monster list (m_list[]). If there are no +empty slots, a slot will be reclaimed from a "dead" monster. If all +slots are full, 0 is returned, which means the function has failed +("Too many monsters!"). + +---------------------------------------------------------------------- + +#####R=== get_mon_num_prep === + +#####GDeclaration + extern errr get_mon_num_prep(void); + +#####GFile + monster2.c + +#####GComment +/* + * Apply a "monster restriction function" to the "monster allocation table" + */ + +#####GDescription +There are no parameters, but there are some other variables which will +need to be set. They are get_mon_num_hook and get_mon_num2_hook. They +are pointers to functions. + +For example, get_mon_num_hook = monster_volcano means when +get_mon_num_hook is called (*get_mon_num_hook)(index), the actual +function called is monster_volcano(index). This particular function +returns TRUE if the monster indicated by "index" has the +RF8_WILD_VOLCANO flag set. + +It is a good idea to store the old value of get_mon_num_hook before +setting a new one, and restoring it when your function is finished. + +Following is a list of functions which can be assigned to +get_mon_num_hook: + +create_molds_hook +create_townpeople_hook +mon_hook_bounty +monster_dungeon +monster_grass +monster_mountain +monster_ocean +monster_quest +monster_shore +monster_town +monster_volcano +monster_waste +monster_wood +mutate_monster_okay +place_monster_okay +summon_specific_okay +vault_aux_animal +vault_aux_chapel +vault_aux_clone +vault_aux_demon +vault_aux_dragon +vault_aux_giant +vault_aux_jelly +vault_aux_kennel +vault_aux_orc +vault_aux_symbol +vault_aux_treasure +vault_aux_troll +vault_aux_undead + +Or you can write your own. The function must take an integer (index) +as a parameter and return boolean (TRUE if the monster is selected, +or FALSE if it is not). + +---------------------------------------------------------------------- + +#####R=== get_mon_num === + +#####GDeclaration + extern s16b get_mon_num(int level); + +#####GFile + monster2.c + +#####GComment +/* + * Choose a monster race that seems "appropriate" to the given level + * + * This function uses the "prob2" field of the "monster allocation table", + * and various local information, to calculate the "prob3" field of the + * same table, which is then used to choose an "appropriate" monster, in + * a relatively efficient manner. + * + * Note that "town" monsters will *only* be created in the town, and + * "normal" monsters will *never* be created in the town, unless the + * "level" is "modified", for example, by polymorph or summoning. + * + * There is a small chance (1/50) of "boosting" the given depth by + * a small amount (up to four levels), except in the town. + * + * It is (slightly) more likely to acquire a monster of the given level + * than one of a lower level. This is done by choosing several monsters + * appropriate to the given level and keeping the "hardest" one. + * + * Note that if no monsters are "appropriate", then this function will + * fail, and return zero, but this should *almost* never happen. + */ + +Description: +For the given level "level", return the index of an appropriate +monster race. + +#####GParameters +> "level" is a dungeon level + +---------------------------------------------------------------------- + +#####R=== monster_desc === + +#####GDeclaration + extern void monster_desc(char *desc, monster_type *m_ptr, + int mode); + +#####GFile + monster2.c + +#####GComment +/* + * Build a string describing a monster in some way. + * + * We can correctly describe monsters based on their visibility. + * We can force all monsters to be treated as visible or invisible. + * We can build nominatives, objectives, possessives, or reflexives. + * We can selectively pronominalize hidden, visible, or all monsters. + * We can use definite or indefinite descriptions for hidden monsters. + * We can use definite or indefinite descriptions for visible monsters. + * + * Pronominalization involves the gender whenever possible and allowed, + * so that by cleverly requesting pronominalization / visibility, you + * can get messages like "You hit someone. She screams in agony!". + * + * Reflexives are acquired by requesting Objective plus Possessive. + * + * If no m_ptr arg is given (?), the monster is assumed to be hidden, + * unless the "Assume Visible" mode is requested. + * + * If no r_ptr arg is given, it is extracted from m_ptr and r_info + * If neither m_ptr nor r_ptr is given, the monster is assumed to + * be neuter, singular, and hidden (unless "Assume Visible" is set), + * in which case you may be in trouble... :-) + * + * I am assuming that no monster name is more than 70 characters long, + * so that "char desc[80];" is sufficiently large for any result. + * + * Mode Flags: + * 0x01 --> Objective (or Reflexive) + * 0x02 --> Possessive (or Reflexive) + * 0x04 --> Use indefinites for hidden monsters ("something") + * 0x08 --> Use indefinites for visible monsters ("a kobold") + * 0x10 --> Pronominalize hidden monsters + * 0x20 --> Pronominalize visible monsters + * 0x40 --> Assume the monster is hidden + * 0x80 --> Assume the monster is visible + * + * Useful Modes: + * 0x00 --> Full nominative name ("the kobold") or "it" + * 0x04 --> Full nominative name ("the kobold") or "something" + * 0x80 --> Genocide resistance name ("the kobold") + * 0x88 --> Killing name ("a kobold") + * 0x22 --> Possessive, genderized if visible ("his") or "its" + * 0x23 --> Reflexive, genderized if visible ("himself") or "itself" + */ + +#####GDescription +Return a monster description "desc" for monster "monster_type" using +flag "mode". The modes are described above. + +#####GParameters +> "desc" is the returned description. +> "monster type" is the monster (monster pointer). +> "mode" is one of the modes described in the comments. + +---------------------------------------------------------------------- + +#####R=== monster_race_desc === + +#####GDeclaration + extern void monster_race_desc(char *desc, int r_idx, + int ego); + +#####GFile + monster2.c + +#####GComment +(none) + +#####GDescription +Return the monster description "desc" for monster with monster index +"r_idx" and monster ego "ego". The monster description is made up of +the ego name (if any) and monster name, or the unique name. + +#####GParameters +> "desc" is the returned description. +> "r_idx" is an entry from the "r_info.txt" file. Beware: there is no + range checking. +> "ego" is an entry from the "re_info.txt". Beware: there is no range + checking. + +---------------------------------------------------------------------- + +#####R=== place_monster_aux === + +#####GDeclaration + extern bool place_monster_aux(int y, int x, int r_idx, + bool slp, bool grp, int status); + +#####GFile + monster2.c + +#####GComment +/* + * Attempt to place a monster of the given race at the given location + * + * Note that certain monsters are now marked as requiring "friends". + * These monsters, if successfully placed, and if the "grp" parameter + * is TRUE, will be surrounded by a "group" of identical monsters. + * + * Note that certain monsters are now marked as requiring an "escort", + * which is a collection of monsters with similar "race" but lower + * level. + * + * Some monsters induce a fake "group" flag on their escorts. + * + * Note the "bizarre" use of non-recursion to prevent annoying output + * when running a code profiler. + * + * Note the use of the new "monster allocation table" code to restrict + * the "get_mon_num()" function to "legal" escort types. + */ + +#####GDescription +Attempt to place a monster at grid "y", "x". The monster has monster +index "m_idx". The monster may be asleep ("slp"). The monster may be +surrounded by a group of identical monsters ("grp"). The monster has +a status of "status" (see below). The function returns TRUE if the +monster is placed successfully, otherwise FALSE. + +#####GParameters +> "y" is the y co-ordinate of the target grid. +> "x" is the x co-ordinate of the target grid. +> "r_idx" is an entry from the "r_info.txt" file. Beware: there is no + range checking. +> "slp" is TRUE if the monster is asleep, otherwise FALSE. +> "grp" is TRUE if the monster is surrounded by a group, otherwise + FALSE. +> "status" is the status of the monster + *****fields.txt*0[status] + +---------------------------------------------------------------------- + +#####R=== place_monster === + +#####GDeclaration + extern bool place_monster(int y, int x, bool slp, + bool grp); + +#####GFile + monster2.c + +#####GComment +/* + * Hack -- attempt to place a monster at the given location + * + * Attempt to find a monster appropriate to the "monster_level" + */ + +#####GDescription +Attempt to place a monster at grid "y", "x". The monster may be asleep +("slp"). The monster may be surrounded by a group of identical +monsters ("grp"). The monster is of the appropriate monster level. The +function returns TRUE if the monster is placed successfully, otherwise +FALSE. + +#####GParameters +> "y" is the y co-ordinate of the target grid. +> "x" is the x co-ordinate of the target grid. +> "slp" is TRUE if the monster is asleep, otherwise FALSE. +> "grp" is TRUE if the monster is surrounded by a group, otherwise + FALSE. + +---------------------------------------------------------------------- + +#####R=== place_monster_one === + +#####GDeclaration + extern s16b place_monster_one(int y, int x, int r_idx, + int ego, bool slp, int status); + +#####GFile + monster2.c + +#####GComment +/* + * Attempt to place a monster of the given race at the given location. + * + * To give the player a sporting chance, any monster that appears in + * line-of-sight and is extremely dangerous can be marked as + * "FORCE_SLEEP", which will cause them to be placed with low energy, + * which often (but not always) lets the player move before they do. + * + * This routine refuses to place out-of-depth "FORCE_DEPTH" monsters. + * + * XXX XXX XXX Use special "here" and "dead" flags for unique monsters, + * remove old "cur_num" and "max_num" fields. + * + * XXX XXX XXX Actually, do something similar for artifacts, to simplify + * the "preserve" mode, and to make the "what artifacts" flag more useful. + * + * This is the only function which may place a monster in the dungeon, + * except for the savefile loading code. + */ + +#####GDescription +Attempt to place a monster at grid "y", "x". The monster has monster +index "m_idx". The monster may be asleep ("slp"). The monster may have +an ego type ("ego"). The monster has a status of "status" (see below). +The function returns TRUE if the monster is placed successfully, +otherwise FALSE. + +#####GParameters +> "y" is the y co-ordinate of the target grid. +> "x" is the x co-ordinate of the target grid. +> "r_idx" is an entry from the "r_info.txt" file. Beware: there is no + range checking. +> "slp" is TRUE if the monster is asleep, otherwise FALSE. +> "ego" is an entry from the "re_info.txt". Beware: there is no range + checking. +> "status" is the status of the monster + *****fields.txt*0[status] + +---------------------------------------------------------------------- + +#####R=== is_friend === + +#####GDeclaration + extern int is_friend(monster_type *m_ptr); + +#####GFile + monster3.c + +#####GComment +/* + * Is the monster in friendly state(pet, friend, ..) + * -1 = enemy, 0 = neutral, 1 = friend + */ + +#####GDescription +Return a value to indicate the status of monster "m_ptr". + *****fields.txt*0[status] + +#####GParameters +> "m_ptr" is a pointer to a monster. + +---------------------------------------------------------------------- + +#####R=== is_enemy === + +#####GDeclaration + extern bool is_enemy(monster_type *m_ptr, + monster_type *t_ptr); + +#####GFile + monster3.c + +#####GComment +/* Should they attack each others */ + +#####GDescription +Return TRUE if monster "m_ptr" should attack monster "t_ptr". If +"m_ptr" is stupid and "r_ptr" is a different type of monster then the +function will return TRUE. If "m_ptr" is not neutral and "r_ptr" is a +breeder, and "r_ptr" is a different type of monster then the function +will return TRUE (and vice versa). If both monsters are not neutral +and one is friendly and the other isn't then the function will return +TRUE. Otherwise the function returns FALSE. + +#####GParameters +> "m_ptr" is a pointer to a monster. +> "t_ptr" is a pointer to a monster (target). + +---------------------------------------------------------------------- + +#####R=== change_side === + +#####GDeclaration + extern bool change_side(monster_type *m_ptr); + +#####GFile + monster3.c + +#####GComment +(none) + +#####GDescription +Change the status of monster "m_ptr" from friendly to unfriendly and +vice versa. Friends and pets become enemies. Neutral Ms become +neutral Ps and vice versa. Companions are unaffected. The +function returns TRUE if the status changed, otherwise FALSE. + +#####GParameters +> "m_ptr" is a pointer to a monster. + +---------------------------------------------------------------------- + +#####R=== find_position === + +#####GDeclaration + extern void find_position(int y, int x, int *yy = 0, + int *xx = 0); + +#####GFile + lua_bind.c + +#####GComment +(none) + +#####GDescription +Find a new grid "yy", "xx" within 6 grids of target grid "y", "x". +The new grid must be within line-of-sight of the target grid. A +maximum of 5000 attempts is made. + +#####GParameters +> "y" is the y co-ordinate of the target grid. +> "x" is the x co-ordinate of the target grid. +> "yy" is the y co-ordinate of the new grid. +> "xx" is the x co-ordinate of the new grid. + +---------------------------------------------------------------------- + +#####R=== can_create_companion === + +#####GDeclaration + extern bool can_create_companion(); + +#####GFile + monster3.c + +#####GComment +/* Returns if a new companion is allowed */ + +#####GDescription +Return TRUE if a companion can be created, otherwise FALSE. + +---------------------------------------------------------------------- + +Back to the *****lua.hlp*0[lua help index] . + + + [[[[[gThis file by Chris Hadgis] diff --git a/lib/mods/theme/help/lua_play.txt b/lib/mods/theme/help/lua_play.txt new file mode 100644 index 00000000..6ab64ddb --- /dev/null +++ b/lib/mods/theme/help/lua_play.txt @@ -0,0 +1,1225 @@ +|||||oy + +#####R /----------------------------------------\ +#####R < player.pkg functions helper file > +#####R \----------------------------------------/ + +---------------------------------------------------------------------- + +#####RFunction: set_parasite + +#####GDeclaration: bool set_parasite(int v, int r); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->parasite" and "p_ptr->parasite_r_idx" +* notice observable changes +*/ + +#####GDescription: +Set time "v" until parasite with monster index "r" is created. The +player gets the message "You feel something growing in you" if "v" +is > 0. Otherwise the player gets the message "Your body convulse +and spawn <monster name>" if the monster is created (80% chance) or +"The hideous thing growing in you seems to die" if the monster dies. + +#####GParameters: +>v is the time until the parasite gestates (must be between 0 and + 10000). +>r is the monster index of parasite to be created. + +---------------------------------------------------------------------- + +#####RFunction: set_disrupt_shield + +#####GDeclaration: bool set_disrupt_shield(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->disrupt_shield" +* notice observable changes +*/ + +#####GDescription: +Set time "v" until shield of invulnerability expires. The player gets +the message "You feel invulnerable" if "v" is > 0. Otherwise the +player gets the message "You are more vulnerable". + +#####GParameters: +>v is the time until the shield expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_prob_travel + +#####GDeclaration: bool set_prob_travel(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->prob_travel" +* notice observable changes +*/ + +#####GDescription: +Set time "v" until random teleportation expires. The player gets +the message "You feel instable" if "v" is > 0. Otherwise the +player gets the message "You are more stable". + +#####GParameters: +>v is the time until random teleportation expires (must be between 0 + and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_tim_deadly + +#####GDeclaration: bool set_tim_deadly(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_deadly" +*/ + +#####GDescription: +Set time "v" until deadly accuracy expires. The player gets the +message "You feel extremely accurate" if "v" is > 0. Otherwise the +player gets the message "You are suddenly much less accurate". + +#####GParameters: +>v is the time until deadly accuracy expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_tim_res_time + +#####GDeclaration: bool set_tim_res_time(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_res_time" +*/ + +#####GDescription: +Set time "v" until space-time distortions expire. The player gets the +message "You are now protected against the space-time distortions" if +"v" is > 0. Otherwise the player gets the message "You are no longer +protected against the space-time distortions". + +#####GParameters: +>v is the time until space-time distortions expire (must be between + 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_tim_reflect + +#####GDeclaration: bool set_tim_reflect(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_reflect" +*/ + +#####GDescription: +Set time "v" until reflection expire. The player gets the message +"You start reflecting the world around you" if "v" is > 0. Otherwise +the player gets the message "You stop reflecting". + +#####GParameters: +>v is the time until reflection expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_meditation + +#####GDeclaration: bool set_meditation(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->meditation" +*/ + +#####GDescription: +Set time "v" until meditation expire. The player gets the message +"You start meditating on yourself" if "v" is > 0. Otherwise the +player gets the message "You stop your self meditation". + +#####GParameters: +>v is the time until meditation expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_strike + +#####GDeclaration: bool set_strike(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->strike" +*/ + +#####GDescription: +Set time "v" until accurate strikes expire. The player gets the +message "You feel very accurate" if "v" is > 0. Otherwise the player +gets the message "You are no longer very accurate". + +#####GParameters: +>v is the time until accurate strikes expire (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_walk_water + +#####GDeclaration: bool set_walk_water(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->walk_water", notice observable changes +*/ + +#####GDescription: +Set time "v" until walking on water expires. The player gets the +message "You feel strangely insubmersible" if "v" is > 0. Otherwise +the player gets the message "You are no longer insubmersible". + +#####GParameters: +>v is the time until walking on water expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_tim_ffall + +#####GDeclaration: bool set_tim_ffall(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_ffall" +*/ + +#####GDescription: +Set time "v" until feather-fall expires. The player gets the message +"You feel very light" if "v" is > 0. Otherwise the player gets the +message "You are suddenly heavier". + +#####GParameters: +>v is the time until feather-fall expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_tim_fire_aura + +#####GDeclaration: bool set_tim_fire_aura(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_fire_aura" +*/ + +#####GDescription: +Set time "v" until fiery aura expires. The player gets the message +"You are enveloped in flames" if "v" is > 0. Otherwise the player +gets the message "You are no longer enveloped in flames". + +#####GParameters: +>v is the time until fiery aura expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_holy + +#####GDeclaration: bool set_holy(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->holy", notice observable changes +*/ + +#####GDescription: +Set time "v" until holiness expires. The player gets the message +"You feel a holy aura around you" if "v" is > 0. Otherwise the +player gets the message "The holy aura vanishes". + +#####GParameters: +>v is the time until holiness expires (must be between 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_grace + +#####GDeclaration: void set_grace(s32b v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->grace", notice observable changes +*/ + +#####GDescription: +Set grace to value "v". Don't allow grace to fall below -30000 or +rise above 30000. + +#####GParameters: +>v is the value of grace. + +---------------------------------------------------------------------- + +#####RFunction: set_mimic + +#####GDeclaration: bool set_mimic(int v, int p); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_mimic", and "p_ptr->mimic_form", +* notice observable changes +*/ + +#####GDescription: +Set time "v" until morph into monster with monster index "p" expires. +The player gets the message "You feel your body change" if "v" is > 0. +Otherwise the player gets the message "You are no longer transformed". + +#####GParameters: +>v is the time until transformation expires (must be between 0 and + 10000). +>p is the monster index of the monster the player wants to mimic. + +---------------------------------------------------------------------- + +#####RFunction: set_no_breeders + +#####GDeclaration: bool set_no_breeders(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "no_breeds" +*/ + +#####GDescription: +Set time "v" until breeders can breed again. The player gets the +message "You feel an anti-sexual aura" if "v" is > 0. Otherwise the +player gets the message "You no longer feel an anti-sexual aura". +Okay... + +#####GParameters: +>v is the time until breeders can breed again (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_invis + +#####GDeclaration: bool set_invis(int v,int p); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_invis", and "p_ptr->tim_inv_pow", +* notice observable changes +*/ + +#####GDescription: +Set time "v" until invisibility expires. The player gets the message +"You feel your body fade away" if "v" is > 0. Otherwise the player +gets the message "You are no longer invisible". + +#####GParameters: +>v is the time until invisibility expires (must be between 0 and + 10000). +>p is the power of timed invisibility. + +---------------------------------------------------------------------- + +#####RFunction: set_lite + +#####GDeclaration: bool set_lite(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_lite", notice observable changes +* +* Note the use of "PU_VIEW", which is needed to +* memorise any terrain features which suddenly become "visible". +* Note that blindness is currently the only thing which can affect +* "player_can_see_bold()". +*/ + +#####GDescription: +Set time "v" until brightness expires. The player gets the message +"You suddenly seem brighter" if "v" is > 0. Otherwise the player +gets the message "You are no longer bright". + +#####GParameters: +>v is the time until brightness expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_blind + +#####GDeclaration: bool set_blind(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->blind", notice observable changes +* +* Note the use of "PU_UN_VIEW", which is needed to memorise any terrain +* features which suddenly become "visible". +* Note that blindness is currently the only thing which can affect +* "player_can_see_bold()". +*/ + +#####GDescription: +Set time "v" until blindness expires. The player gets the message "You +are blind" if "v" is > 0. Otherwise the player gets the message "You +can see again". + +#####GParameters: +>v is the time until blindness expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_confused + +#####GDeclaration: bool set_confused(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->confused", notice observable changes +*/ + +#####GDescription: +Set time "v" until confusion expires. The player gets the message "You +are confused" if "v" is > 0. Otherwise the player gets the message +"You feel less confused now". + +#####GParameters: +>v is the time until confusion expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_poisoned + +#####GDeclaration: bool set_poisoned(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->poisoned", notice observable changes +*/ + +#####GDescription: +Set time "v" until poison expires. The player gets the message "You +are poisoned" if "v" is > 0. Otherwise the player gets the message +"You are no longer poisoned". + +#####GParameters: +>v is the time until poison expires (must be between 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_afraid + +#####GDeclaration: bool set_afraid(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->afraid", notice observable changes +*/ + +#####GDescription: +Set time "v" until fear expires. The player gets the message "You are +terrified" if "v" is > 0. Otherwise the player gets the message "You +feel bolder now". + +#####GParameters: +>v is the time until fear expires (must be between 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_paralyzed + +#####GDeclaration: bool set_paralyzed(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->paralyzed", notice observable changes +*/ + +#####GDescription: +Set time "v" until paralysis expires. The player gets the message "You +are paralyzed" if "v" is > 0. Otherwise the player gets the message +"You can move again". + +#####GParameters: +>v is the time until paralysis expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_image + +#####GDeclaration: bool set_image(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->image", notice observable changes +* +* Note that we must redraw the map when hallucination changes. +*/ + +#####GDescription: +Set time "v" until hallucination expires. The player gets the message +"Oh, wow! Everything looks so cosmic now" if "v" is > 0. Otherwise +the player gets the message "You can see clearly again". + +#####GParameters: +>v is the time until hallucination expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_fast + +#####GDeclaration: bool set_fast(int v, int p); + +#####GFile: xtra2.c + +#####GComment: +(none) + +#####GDescription: +Set time "v" until speed of speed factor "p" expires. The player gets +the message "You feel yourself moving faster" if "v" is > 0. Otherwise +the player gets the message "You feel yourself slow down". + +#####GParameters: +>v is the time until speed expires (must be between 0 and 10000). +>p is the speed factor. + +---------------------------------------------------------------------- + +#####RFunction: set_light_speed + +#####GDeclaration: bool set_light_speed(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->lightspeed", notice observable changes +*/ + +#####GDescription: +Set time "v" until light-speed expires. The player gets the message +"You feel as if time has stopped" if "v" is > 0. Otherwise the player +gets the message "You feel time returning to its normal rate". + +#####GParameters: +>v is the time until light-speed expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_slow + +#####GDeclaration: bool set_slow(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->slow", notice observable changes +*/ + +#####GDescription: +Set time "v" until slowness expires. The player gets the message "You +feel yourself moving slower" if "v" is > 0. Otherwise the player gets +the message "You feel yourself speed up". + +#####GParameters: +>v is the time until slowness expires (must be between 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_shield + +#####GDeclaration: bool set_shield(int v, int p, s16b o, s16b d1, s16b d2); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->shield", notice observable changes +*/ + +#####GDescription: +Set time "v" until stone-shield expires. The player gets the message +"Your skin turns to stone" if "v" is > 0. Otherwise the player gets +the message "Your skin returns to normal". Stone-shield has spell +power "p", spell option "o", and power options "d1" and "d2". + +#####GParameters: +>v is the time until stone-shield expires (must be between 0 and + 10000). +>p is the power of the stone-shield spell. +>o is the option of the stone-shield spell. +>d1 is the power for option 1 of the stone-shield spell. +>d2 is the power for option 2 of the stone-shield spell. + +---------------------------------------------------------------------- + +#####RFunction: set_blessed + +#####GDeclaration: bool set_blessed(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->blessed", notice observable changes +*/ + +#####GDescription: +Set time "v" until blessing expires. The player gets the message "You +feel righteous" if "v" is > 0. Otherwise the player gets the message +"The prayer has expired". + +#####GParameters: +>v is the time until blessing expires (must be between 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_hero + +#####GDeclaration: bool set_hero(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->hero", notice observable changes +*/ + +#####GDescription: +Set time "v" until heroism expires. The player gets the message "You +feel like a hero" if "v" is > 0. Otherwise the player gets the +message "The heroism wears off". + +#####GParameters: +>v is the time until heroism expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_shero + +#####GDeclaration: bool set_shero(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->shero", notice observable changes +*/ + +#####GDescription: +Set time "v" until berserk expires. The player gets the message "You +feel like a killing machine" if "v" is > 0. Otherwise the player gets +the message "You feel less Berserk". + +#####GParameters: +>v is the time until berserk expires (must be between 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_protevil + +#####GDeclaration: bool set_protevil(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->protevil", notice observable changes +*/ + +#####GDescription: +Set time "v" until protection from evil expires. The player gets the +message "You feel safe from evil" if "v" is > 0. Otherwise the player +gets the message "You no longer feel safe from evil". + +#####GParameters: +>v is the time until protection from evil expires (must be between 0 + and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_protgood + +#####GDeclaration: bool set_protgood(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->protgood", notice observable changes +*/ + +#####GDescription: +Set time "v" until protection from good expires. The player gets the +message "You feel safe from good" if "v" is > 0. Otherwise the player +gets the message "You no longer feel safe from good". + +#####GParameters: +>v is the time until protection from evil expires (must be between 0 + and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_protundead + +#####GDeclaration: bool set_protundead(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->protundead", notice observable changes +*/ + +#####GDescription: +Set time "v" until protection from undead expires. The player gets the +message "You feel safe from undead" if "v" is > 0. Otherwise the +player gets the message "You no longer feel safe from undead". + +#####GParameters: +>v is the time until protection from undead expires (must be between + 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_invuln + +#####GDeclaration: bool set_invuln(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->invuln", notice observable changes +*/ + +#####GDescription: +Set time "v" until invulnerability expires. The player gets the +message "Invulnerability" if "v" is > 0. Otherwise the player gets +the message "The invulnerability wears off". + +#####GParameters: +>v is the time until invulnerability expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_tim_invis + +#####GDeclaration: bool set_tim_invis(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_invis", notice observable changes +*/ + +#####GDescription: +Set time "v" until see invisible expires. The player gets the message +"Your eyes feel very sensitive" if "v" is > 0. Otherwise the player +gets the message "Your eyes feel less sensitive". + +#####GParameters: +>v is the time until see invisible expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_tim_infra + +#####GDeclaration: bool set_tim_infra(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_infra", notice observable changes +*/ + +#####GDescription: +Set time "v" until infravision expires. The player gets the message +"Your eyes begin to tingle" if "v" is > 0. Otherwise the player gets +the message "Your eyes stop tingling". + +#####GParameters: +>v is the time until infravision expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_mental_barrier + +#####GDeclaration: bool set_mental_barrier(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->tim_mental_barrier", notice observable changes +*/ + +#####GDescription: +Set time "v" until mental barrier expires. The player gets the message +"Your mind grows stronger" if "v" is > 0. Otherwise the player gets +the message "Your mind is no longer especially strong". + +#####GParameters: +>v is the time until mental barrier expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_oppose_acid + +#####GDeclaration: bool set_oppose_acid(int v); + +#####GFile: xtra2.c + +#####GComment: + +#####GDescription: +Set time "v" until feather-fall expires. The player gets the message +"You feel very light" if "v" is > 0. Otherwise the player gets the +message "You are suddenly heavier". + +#####GParameters: +>v is the time until feather-fall expires (must be between 0 and + 10000). +>v is the time until feather-fall expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_oppose_elec + +#####GDeclaration: bool set_oppose_elec(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->oppose_elec", notice observable changes +*/ + +#####GDescription: +Set time "v" until electricity resistance expires. The player gets +the message "You feel resistant to electricity" if "v" is > 0. +Otherwise the player gets the message "You feel less resistant to +electricity". + +#####GParameters: +>v is the time until electricity resistance expires (must be between + 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_oppose_fire + +#####GDeclaration: bool set_oppose_fire(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->oppose_fire", notice observable changes +*/ + +#####GDescription: +Set time "v" until fire resistance expires. The player gets the +message "You feel resistant to fire" if "v" is > 0. Otherwise the +player gets the message "You feel less resistant to fire". + +#####GParameters: +>v is the time until fire resistance expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_oppose_cold + +#####GDeclaration: bool set_oppose_cold(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->oppose_cold", notice observable changes +*/ + +#####GDescription: +Set time "v" until cold resistance expires. The player gets the +message "You feel resistant to cold" if "v" is > 0. Otherwise the +player gets the message "You feel less resistant to cold". + +#####GParameters: +>v is the time until cold resistance expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_oppose_pois + +#####GDeclaration: bool set_oppose_pois(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->oppose_pois", notice observable changes +*/ + +#####GDescription: +Set time "v" until poison resistance expires. The player gets the +message "You feel resistant to poison" if "v" is > 0. Otherwise the +player gets the message "You feel less resistant to poison". + +#####GParameters: +>v is the time until poison resistance expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_oppose_ld + +#####GDeclaration: bool set_oppose_ld(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->oppose_ld" +*/ + +#####GDescription: +Set time "v" until light and dark resistance expires. The player gets +the message "You feel protected against the light's fluctuation" if +"v" is > 0. Otherwise the player gets the message "You are no longer +protected against the light's fluctuation". + +#####GParameters: +>v is the time until light and dark resistance expires (must be + between 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_oppose_cc + +#####GDeclaration: bool set_oppose_cc(int v); + +#####GFile: xtra2.c +/* +* Set "p_ptr->oppose_cc" +*/ + +#####GComment: + +#####GDescription: +Set time "v" until chaos resistance expires. The player gets the +message "You feel protected against raw chaos" if "v" is > 0. +Otherwise the player gets the message "You are no longer protected +against chaos". + +#####GParameters: +>v is the time until chaos resistance expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_oppose_ss + +#####GDeclaration: bool set_oppose_ss(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->oppose_ss" +*/ + +#####GDescription: +Set time "v" until sound and shard resistance expires. The player gets +the message "You feel protected against the ravages of sound and +shards" if "v" is > 0. Otherwise the player gets the message "You are +no longer protected against the ravages of sound and shards". + +#####GParameters: +>v is the time until sound and shard resistance expires (must be + between 0 and 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_oppose_nex + +#####GDeclaration: bool set_oppose_nex(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->oppose_nex" +*/ + +#####GDescription: +Set time "v" until nexus resistance expires. The player gets the +message "You feel protected against the strange forces of nexus" if +"v" is > 0. Otherwise the player gets the message "You are no longer +protected against the strange forces of nexus". + +#####GParameters: +>v is the time until nexus resistance expires (must be between 0 and + 10000). + +---------------------------------------------------------------------- + +#####RFunction: set_stun + +#####GDeclaration: bool set_stun(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->stun", notice observable changes +* +* Note the special code to only notice "range" changes. +*/ + +#####GDescription: +Set stun level "v". If the player race can't be stunned then the level +is forced to 0. A value > 100 means the player is knocked out. A value +>50 is a heavy stun. A value > 0 is a stun. If the stun level has +increased, a message is printed. There is a small chance of stun level +in 1000, or a 1 in 16 chance of a vicious blow which decreases +intelligence and/or wisdom for a while. + +#####GParameters: +>v is the stun level. + +---------------------------------------------------------------------- + +#####RFunction: set_cut + +#####GDeclaration: bool set_cut(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->cut", notice observable changes +* +* Note the special code to only notice "range" changes. +*/ + +#####GDescription: +Set cut level "v". If the player race can't be cut then the time is +forced to 0. A value > 1000 is a mortal wound. A value > 200 is a deep +gash. A value > 100 is a severe cut. A value > 50 is a nasty cut. A +value > 25 is a bad cut. A value > 10 is a light cut. A value > 0 is a +graze. If the cut level has increased, a message is printed. There is +a small chance of stun level in 1000, or a 1 in 16 chance of scarring +which decreases charisma for a while. + +#####GParameters: +>v is the cut level. + +---------------------------------------------------------------------- + +#####RFunction: set_food + +#####GDeclaration: bool set_food(int v); + +#####GFile: xtra2.c + +#####GComment: +/* +* Set "p_ptr->food", notice observable changes +* +* The "p_ptr->food" variable can get as large as 20000, allowing the +* addition of the most "filling" item, Elvish Waybread, which adds +* 7500 food units, without overflowing the 32767 maximum limit. +* +* Perhaps we should disturb the player with various messages, +* especially messages about hunger status changes. XXX XXX XXX +* +* Digestion of food is handled in "dungeon.c", in which, normally, +* the player digests about 20 food units per 100 game turns, more +* when "fast", more when "regenerating", less with "slow digestion", +* but when the player is "gorged", he digests 100 food units per 10 +* game turns, or a full 1000 food units per 100 game turns. +* +* Note that the player's speed is reduced by 10 units while gorged, +* so if the player eats a single food ration (5000 food units) when +* full (15000 food units), he will be gorged for (5000/100)*10 = 500 +* game turns, or 500/(100/5) = 25 player turns (if nothing else is +* affecting the player speed). +*/ + +#####GDescription: +Set hunger level "v". A value < 500 is fainting. A value < 1000 is +weak. A value < 2000 is weak. A value < 10000 is full. A value +< 15000 is bloated. A value < 20000 is gorged. If one of these +levels is crossed a message is printed. + +#####GParameters: +>v is the hunger level (must be between 0 and 20000). + +---------------------------------------------------------------------- + +#####RFunction: check_experience + +#####GDeclaration: void check_experience(void); + +#####GFile: xtra2.c + +#####GComment: +/* +* Advance experience levels and print experience +*/ + +#####GDescription: +Check if player experience level has changed. If a player has achieved +a level for the first time, give reward or corruption (1 chance in 3) +if they apply, and increase skill points. + +---------------------------------------------------------------------- + +#####RFunction: check_experience_obj + +#####GDeclaration: void check_experience_obj(object_type *o_ptr); + +#####GFile: xtra2.c + +#####GComment: +/* +* Advance experience levels and print experience +*/ + +#####GDescription: +Check if object "o_ptr" experience level has changed. If an object has +achieved a level for the first time, apply gains. + +#####GParameters: +>o_ptr is the pointer to the object gaining experience. + +---------------------------------------------------------------------- + +#####RFunction: gain_exp + +#####GDeclaration: void gain_exp(s32b amount); + +#####GFile: xtra2.c + +#####GComment: +/* +* Gain experience (share it to objects if needed) +*/ + +#####GDescription: +Gain "amount" of experience. Count the number of objects which will +gain experience. The objects share equally 2/3 of "amount". Give +corruption if it applies. Gain experience. If experience is less +than maximum, then increase maximum experience by 20% of "amount". +Check for level change and print experience (check_experience). + +#####GParameters: +>amount is the amount of experience to share. + +---------------------------------------------------------------------- + +#####RFunction: lose_exp + +#####GDeclaration: void lose_exp(s32b amount); + +#####GFile: xtra2.c + +#####GComment: +/* +* Lose experience +*/ + +#####GDescription: +Decrease experience by "amount". Experience can not fall below zero. +Check for level change and print experience (check_experience). + +#####GParameters: +>amount is the amount of experience to lose. + +---------------------------------------------------------------------- + + +Back to the *****lua.hlp*0[lua help index] . + + + [[[[[gThis file by Chris Hadgis] + + diff --git a/lib/mods/theme/help/lua_pow.txt b/lib/mods/theme/help/lua_pow.txt new file mode 100644 index 00000000..c221a664 --- /dev/null +++ b/lib/mods/theme/help/lua_pow.txt @@ -0,0 +1,266 @@ +|||||oy +#####R /----------------------------------------\ +#####R < Adding new racial powers > +#####R \----------------------------------------/ + +#####R=== Introduction === + +You *must* download and install my lua example files from +[[[[[Ghttp://www.moppy.co.uk/angband.htm]. And also you should read the +*****lua_intr.txt*0[scripting introduction] file if you haven't already done +so. + +The (commented) accompanying script file for this tutorial is +lib\scpt\pheonix.lua. Open it in your text editor! + +#####R=== The Racial Power === + +Let's start with something simple. Let's say you wanted your new race (let's +call it "Pheonix") to be able to cast fire balls as their racial power. + +#####R=== Starting off === + +If you have a look at pheonix.lua you'll note the first lines are comments. +I'll talk a bit more about comments later, but it's worth pointing out that any +lines of text preceded by a double hyphen ([[[[[B--]) will be ignored by the +scripting engine, and are therefore comments. +After the comments, the first 10 lines of code are as follows: + +#####BPHEONIX_POWER = add_power +#####B{ +#####B ["name"] = "Fire Breath", +#####B ["desc"] = "You are able to cast fireballs", +#####B ["desc_get"] = "Your beak glows red", +#####B ["desc_lose"] = "Your beak goes cold again", +#####B ["level"] = 10, +#####B ["cost"] = 11, +#####B ["stat"] = A_INT, +#####B ["fail"] = 14, + +So, [[[[[BPHEONIX_POWER = add_power] is registering our power. We're giving it +a name (PHEONIX_POWER) and saying that it is defined by calling the special +function [[[[[Badd_power]. This special function is only used to define lua- +scripted +powers, and has attributes which are identified by their inclusion in square +brackets. +Note the following: +- Lua is case sensitive. The name of our power is a constant, will never change +so that's been named with capitals. variables and functions are named all in +lower case. Technically speaking, Lua does not support constants, but we can +emulate them by variables in this way. They don't have to be capitalised, but +if you capitalise all your constants, it makes things easier to read, and +you'll be following normal programming protocol. +- There are no spaces in the name of the power. Use an underscore for spaces +if you need to improve legibility. + +[[[[[B"name" = "Fire Breath",] This is the name of the power as it is +displayed in the +U menu, and as you will define it in p_info.txt (more about that later). + +[[[[[B"desc" = "You are able to cast fireballs",] This is what would +appear in the +information display list if you drank a potion of self knowledge or +similar. + +[[[[[B"desc_get" = "Your beak glows red",] This is the information displayed +when you +gain this power. + +[[[[[B"desc_lose" = "Your beak goes cold again",] This is the information +displayed when +you lose this power. Eg After a mutation/corruption. + +[[[[[B"level" = 10,] Character level which must be gained in order to use +power, + +[[[[[B"cost" = 11,] Amount of mana to cast this power. + +[[[[[B"stat" = A_INT,] stat which will define whether it works or not, + +[[[[[B"fail" = 14,] how high that stat must be. + +So our Pheonix will be able to cast PHEONIX_POWER from clvl 10, at a cost of +11 mana, providing that the player's intelligence is 14 and upwards. + +#####R=== The function === + +The next section is a lot longer, so we'll look at it line by line. I'll +strip the comments for the purpose of this helpfile. + +#####B["power"] = function() +#####B local ret, dir, damage +#####B ret, dir = get_aim_dir(); +#####B if (ret == FALSE) then +#####B return +#####B end +#####B damage = player.lev*3 +#####B msg_print("You breathe fire.") +#####B fire_ball(GF_FIRE, dir, damage, 3) +#####Bend, + +The [[[[[B"power"] bit is what actually happens when the player accesses this +power +from their 'U' menu. Every function must start with the word [[[[[Bfunction]. +Normally, we'd also declare its name at this point, but as this is contained +within the [[[[[Badd_power] function, we just use the word [[[[[Bfunction] The +empty +brackets after this denote that no arguments are passed to the function. +Lets look at the next line. + +#####B local ret, dir, damage + +The [[[[[Blocal] bit is saying that we're going to declare some local +variables. That +is, that there will be three variables used in this function , that apply +exclusively to this function, and to no others. Global variables are +variables that apply to the whole script, in multiple functions. The three +variables will be called [[[[[Bret] (return), [[[[[Bdir] (direction), and +[[[[[Bdamage]. They will be used to determine the direction the ball +will fire in, and how much damage it will do. We'll see them in use when we add +the third line: + +#####B ret, dir = get_aim_dir(); + +here we're saying that the variables will take their value from the result +of a function. The program performs the function [[[[[Bget_aim_dir] which +essentially asks the player to choose a direction or pick a target. +[[[[[Bget_aim_dir] +assigns the value [[[[[Bret] to either TRUE (if the player correctly selected a +direction) or FALSE (if the player failed to do so (maybe they changed their +mind, or hit the wrong key!)). The value [[[[[Bdir] is the direction which was +selected (or the path to the target if a target was selected). OK so let's add +the next line: + +#####B if (ret == FALSE) then return end + +This introduces another fundamental scripting concept - [[[[[Bif] statements. +They work just as you would expect them too. You say "if a certain condition is +met, then do the following things." +So in this function we're saying, "if the value of [[[[[Bret] is FALSE then +[[[[[Breturn]." +As I mentioned above, [[[[[Bret] is false if the player aborted (either +deliberately or accidentally) the spell casting whilst choosing a direction +for the spell. The double equals sign are used to mean "is equal to" as a +single equals sign is used for defining variables remember? A single equals +sign is more of a "let x be equal to y" thing. +[[[[[Breturn] means stop the current function. And [[[[[Bend] signifies the +close of the [[[[[Bif] +statement. Every [[[[[Bif] statement must begin with an [[[[[Bif] and finish +with an [[[[[Bend]. +So, what our [[[[[Bif] statement is saying is; "if the player failed to specify +a direction or target for the spell, stop the function here." +If the player has correctly specified a direction/target, the function +continues to the next line: + +#####B damage = player.lev*3 + +Here we're saying that the variable [[[[[Bdamage] has a value equal to the +players current character level, multiplied by 3. + +#####B msg_print("You breathe fire.") + +Fairly easy to see what this does - displays the message "You breathe fire." +I could have put anything there obviously, like [[[[[Bmsg_print("You open] +[[[[[Byour mouth and everyone falls over with the smell of hot curry")] or +some other such rubbish. But note that the message is enclosed within double +quotes. The quotes aren't displayed in the message on screen, but signify the +start and end of the message. + +#####B fire_ball(GF_FIRE, dir, damage, 3) + +This is the line that casts the spell. it says execute the function +[[[[[Bfire_ball]. Now, this doesn't mean a fireball, it means fire a ball. +There's an important distinction there! All it knows it is doing is firing a +ball, it doesn't know what kind of ball, or where, or how big, or how much +damage. +The [[[[[BGF_FIRE,] bit is what tell us it is a fire ball. If it was +[[[[[BGF_COLD,] + we'd have a cold ball, or [[[[[BGF_CHAOS,] it would be a chaos ball and +so on and so on. A full list of those types can be found in *****lua_gf.txt*0[lua_gf.txt]. +[[[[[B dir,] is the direction, from the [[[[[Bget_aim_dir()] bit. +[[[[[B damage,] is the damage. As we've already said, this will be clvl*3. +[[[[[B 3)] is the radius. +and finally... + +#####B end, +#####B} + +[[[[[Bend,] tells it the function has ended. Every function must finish with +[[[[[Bend]. +You should have spotted that after the end of each attribute is a comma. Make +sure you include this, and don't forget the braces at the very very end to +close the [[[[[Badd_power] function. + +#####R=== Finishing the LUA file === + +Save this as a text file 'pheonix.lua' Put it into the lib\scrpt directory +of ToME, and open the init.lua file which you'll find in the same +directory. + +Add the following line and resave the init.lua file. + +#####Btome_dofile("pheonix.lua") + +This ensures that ToME loads your file on start-up. Because you've installed +the example scripts, this has all been done for you. + +#####R=== A quick word about comments === + +One of the reasons Angband has so many variants is because the source code is +clearly commented. Almost every line of code has an accompanying comment, +explaining what that line does. It's good practice to add comments to any code +or script you write. It's helpful to others who are learning, anyone who takes +over your project, and also to yourself when you come back in a month's time +and can't remember what you did! So comment your code clearly, and well! + +You can also add multi line comments which should be enclosed by [[[[[B--[[] +and +#####B]] + +#####R=== Tying it all together === + +You'll now need to link this 'U' power to the pheonix race via the +p_info.txt file. Simply add a line within the class definition file that has +the format [[[[[BR:Z:<name>]the name of the power as it appears in the +[[[[[B"name"] +section we did right at the beginning, remember? Seeing as there is no pheonix +race, I've gone ahead and made one up as a demonstration. If you've downloaded +and installed the example files from [[[[[Ghttp://www.moppy.co.uk/angband.htm/] +then +you'll notice you already have the pheonix race available. Printed below is +the p_info.txt entry for it. + + +#####BR:N:23:Pheonix +#####BR:D:Born from flame, these powerful bird like creatures gain fire related +#####BR:D:abilities as they grow. +#####BR:S:1:0:2:1:-3:2:-5 +#####BR:K:-8:15:20:-10:5:-1:-5:-5 +#####BR:P:8:130:5:210 +#####BR:M:255:70:2:1:20:5:2:1:18:3 +#####BR:E:1:1:1:2:1:1 +#####BR:C:Warrior | Mage | Priest | Rogue | Ranger | Paladin | Blade | +#####BR:C:Warlock | Chaos-Warrior | Monk | Mindcrafter | High-Mage | +#####BR:C:BeastMaster | Alchemist | Power-Mage | Runecrafter | +#####BR:C:Sorceror | Archer | Illusionist | Druid | Necromancer | Black-Knight +| +#####BR:C:Daemonologist | Weaponmaster | Summoner | +#####BR:Z:Fire Ball +#####BR:R:1:0 +#####BR:F:RES_FIRE | FEATHER | + +Note the [[[[[BR:Z:] line. + +If all is well, you should be able to start ToME now and breathe fire! Once +you get to lvl 10 anyhow. Don't forget, this is the kind of thing wizard mode +was invented for! Ctrl-A and confirm at the prompt, and then 'e' will allow +you to alter stats, including experience. Approx 1000 exp should do to get you +to clvl 10. + +Ready for more? How about adding a new *****lua_skil.txt*0[skill] ? + + [[[[[gThis file by fearoffours (fearoffours@moppy.co.uk)] + + + + diff --git a/lib/mods/theme/help/lua_ques.txt b/lib/mods/theme/help/lua_ques.txt new file mode 100644 index 00000000..1d4b9c65 --- /dev/null +++ b/lib/mods/theme/help/lua_ques.txt @@ -0,0 +1,299 @@ +|||||oy +#####R /----------------------------------------\ +#####R < Adding a new quest > +#####R \----------------------------------------/ + +#####R=== Introduction === + +Adding a quest involves a bit more work, and there is, in some ways, rather +more potential for things to go wrong! But it's a great way of showing just +WHAT can be done with lua scripting. It proves just how much a lua patch can +change the overall feel of the game. And it will give you a much better idea of +how lua interfaces with the game source. You should have read the +*****lua_intr.txt*0[scripting introduction], *****lua_pow.txt*0[racial power tutorial] +and *****lua_skil.txt*0[adding new skills tutorial] before going much +further. All of the above files contain some fairly fundamental information +which you will find necessary for full understanding of this file. + +The script we're looking at is going to create a quest entrance in the middle +of Bree. Entering the quest you see a little girl who has had her necklace +stolen. Your job is to travel down a corridor, killing some monsters on the +way, pick up the amulet and return it to the girl. Once done, she'll reveal the +stairs back to Bree, and give you a (randomly generated) ring. If you feel the +monsters are too hard, the only thing to do is talk to the little girl who will +reveal the stairs again, failing the quest for you, and also block off the +entrance to the amulet so that you can't cheat and make off with the amulet! + +#####R=== Getting started === + +Open amulet.lua (you have downloaded the example scripts from +[[[[[Ghttp://www.moppy.co.uk/angband.htm], haven't you?). The first thing you +should see is that yet again we're calling a function that takes its arguments +from a table, making it easy to read what's going on in the script. + +This time our function is add_quest and we have the following keys and values: + +#####B["global"] = "AMULET_QUEST", +#####B["name"] = "Hannahs lost amulet", +#####B["desc"] = { +#####B "Retrieve an amulet for Hannah Cooke. It's guarded!" +#####B }, +#####B["level"] = 5, +#####B["hooks"] = { + +[[[[[B"global" = ] is a constant that we set when we refer to this quest in +various places... +[[[[[B"name" = ] Obviously a long name for the quest. This will appear in the +quest screen (Ctrl-Q) and we may use in some map files too. +[[[[[B"desc" = ] This is a long description for the quest. Again this is what +will appear in the quest screen, and each line should be not more than 80 +characters. +[[[[[B"level" = ] This is a rough indicator of how hard the quest is, and again, +appears in the quest screen +[[[[[B"hooks" = ] This is the real 'meat' of the quest. Like the [[[[[B"spell_list"] key +in the [[[[[Badd_magic] function, this is another sub-table. + +To understand fully the structure of the "hooks" key it's worth taking a bit of +a detour at this point and discussing how the scripting interface works in +general. + +#####R=== How the scripts work (ish) === + +Essentially there's a list of events that happen in the game. As each of these +events happen they run a check to see if there's any functions that they need +to run at that event. When we ran the add_mkey part of adding a new skill +power, we essentially said "when the 'm' key is pressed in the game, perform +the [[[[[Bexecute_magic(constructor_powers)] function". Likewise we did a similar +thing with adding the racial power, only we hooked onto the pressing of the +'U' key. + +All of this was partly hidden because of the way that the [[[[[Badd_magic] and +[[[[[Badd_power] functions work. But here in the [[[[[Badd_quest] function it's a bit more +specific. We are going to specify what events we're going to hook onto, and +what functions we want to trigger at that event. + +A full list of hooks can be found in the source-file util.pkg. + +#####R=== The hooks === + +#####B[HOOK_BIRTH_OBJECTS] = function() +#####B quest(AMULET_QUEST).status = QUEST_STATUS_TAKEN +#####Bend, + +So here we are with our first hook. We've declared that we're adding it to the +birth of your character. That is, the function will be called when you create +your character. And what we're doing here is automatically declaring the quest +as being taken, like the Dol Guldur quest is. Each quest has 7 different +statuses: + +[[[[[BQUEST_STATUS_IGNORED -1 ] This is unused, but the quest is +ignored (will not be taken and has not been taken). +[[[[[BQUEST_STATUS_UNTAKEN 0 ] The quest has not been accepted yet +[[[[[BQUEST_STATUS_TAKEN 1 ] You have accepted the quest +[[[[[BQUEST_STATUS_COMPLETED 2 ] You have completed the quest +successfully but not been rewarded for it +[[[[[BQUEST_STATUS_REWARDED 3 ] You've completed and rewarded the quest +[[[[[BQUEST_STATUS_FAILED 4 ] You've failed the quest +[[[[[BQUEST_STATUS_FINISHED 5 ] The quest is completely finished +successfully. +[[[[[BQUEST_STATUS_FAILED_DONE 6 ] The quest is completely finished +unsuccessfully. + +You see that we've used the constant we defined in the "global" section is +passed as an argument to [[[[[Bquest.status]. + +Next hook then: + +#####B[HOOK_GEN_QUEST] = function() +#####B if (player.inside_quest ~= AMULET_QUEST) then +#####B return FALSE +#####B else +#####B load_map("amulet.map", 2, 2) +#####B return TRUE +#####B end +#####Bend, + +Ok, we're hooking onto the generation of the quest here. This is specifically +triggered in this instance by going down the quest entrance stairs in Bree. +Once you've gone down the stairs, you are technically inside the quest, which +means we can say if the person is not inside the amulet quest, then ignore this +function, otherwise load the file 'amulet.map' at co-ordinates x=2 y=2. You'll +find the amulet.map file in the edit directory, make sure you check it out. The +syntax for map files is fairly simple, though I might get round to writing a +tutorial on them some day! In the mean time holler for me at the usual email +address if you're unsure. + +#####B[HOOK_FEELING] = function() +#####B if (player.inside_quest ~= AMULET_QUEST) then +#####B return FALSE +#####B else +#####B cmsg_print(TERM_L_BLUE, "Hannah speaks to you:") +#####B cmsg_print(TERM_YELLOW, "'Some nasty monsters stole my +#####B favourite necklace.'") +#####B cmsg_print(TERM_YELLOW, "'It's hidden at the back of that +#####B corridor! Please fetch it for me'") +#####B return TRUE +#####B end +#####Bend, + +We're moving into some rather more obvious territory here, and getting into the +meat of the quest. The [[[[[BHOOK_FEELING] is triggered at the point when the level +feeling appears. It's important that this is run only if the player is inside +the amulet quest, as otherwise it will trigger EVERY time a level feeling +occurs, when you go down a level in the barrow-downs, whenever! Returning TRUE +will replace the level feeling with what's above, returning FALSE will still +perform the function but will amend the normal level feeling - so here if we'd +returned false we'd still get our custom messages, but they'd follow with +'looks like a typical quest level'. Of course returning false may cause you +other problems (see end of this file!) depending on what else you have in your +function. + +#####B[HOOK_GIVE] = function(m_idx, item) + +#####B m_ptr = monster(m_idx) +#####B o_ptr = get_object(item) + +#####B if (m_ptr.r_idx == test_monster_name("Hannah Cooke, a little girl")) +#####B and (o_ptr.tval == TV_AMULET) and (o_ptr.sval == 2) then + +#####B cmsg_print(TERM_YELLOW, "'Thank-you!'") + +#####B inven_item_increase(item, -1) +#####B inven_item_optimize(item) + +#####B quest(AMULET_QUEST).status = QUEST_STATUS_COMPLETED + +#####B cave_set_feat(7, 6, 6) + +#####B cmsg_print(TERM_YELLOW, "'Here, take this pretty ring I found +#####B as a token of gratitude!'") +#####B random_type = randint(57) +#####B reward = create_object(TV_RING, random_type) +#####B drop_near(reward, -1, py, px) +#####B quest(AMULET_QUEST).status = QUEST_STATUS_REWARDED +#####B return TRUE +#####B else +#####B return FALSE +#####B end +#####Bend, + +This is a fairly long function, but don't be intimidated. It's not really +difficult to understand. As you can see we're hooking into the giving of an +object to a monster (the 'y' key). Because of this, the function takes two +arguments - [[[[[Bm_idx] (the monster that you're giving to) and [[[[[Bitem] (the item that +you're giving). + +We then make it possible to work with the monster and item variables by +referencing them to two functions which identify them from the edit files: +[[[[[Bmonster()] and [[[[[Bget_object()]. This enables us to now say, 'if the name of the +monster is "Hannah Cooke, a little girl" and the type of item is an amulet and +that amulet is an amulet of adornment, then carry out the following commands'. + +We then say call the function [[[[[Binven_item_increase()] which places an object in +the inventory. It takes two arguments, the first being what object to put in +the inventory and the second being how many of that type of objects to put in +the inventory. You can see that by placing -1 as the second argument it fairly +obviously subtracts that item from the inventory. The [[[[[Binven_item_optimize()] +function checks that there are no empty inventory slots, and if there are, +erases them. + +The quest is then completed, and the stairs are revealed using the +[[[[[Bcave_set_feat()] function. This function takes three arguments, the first is the +x co-ordinate of the cave square you wish to change (counted from top left) the +second is the y co-ordinate, and the third is the index number of the feature +you wish the square to become as defined in f_info.txt. + +We then set about rewarding the player. As you can see we call [[[[[Bcreate_object()] +which takes two variables: the first is the type of object (these are all +listed in object.pkg) and the second is the sub-type of that object. I searched +k_info.txt to see how many different types of ring there were (57) and used a +randomly selected number with a maximum value of 57 as that specific sub-type. + +We then drop the object (although it's been created, it has only been created +in the game's memory, it's nowhere that the player can interact with it until +we drop it). The [[[[[Bdrop_near()] function takes 3 variables, the first being the +object that you wish to drop, the second being the chance that it disappears +(like an arrow, or mimicked creature) on drop. If you set it to -1, it won't +ever disappear. The last two are the co-ordinates at which the object will be +dropped. py and px are the global variables defined by where the player is +standing, so in this case it will drop under the player. You could do +[[[[[Binven_item_increase(reward, 1)] if you wanted, but I wanted to show a variety of +ways of handling objects. + +OK, let's take a look at the next hook: + +#####B[HOOK_CHAT] = function(m_idx) +#####B m_ptr = monster(m_idx) +#####B if (m_ptr.r_idx == test_monster_name("Hannah Cooke, a little girl")) then +#####B if (quest(AMULET_QUEST).status == QUEST_STATUS_REWARDED) then +#####B cmsg_print(TERM_YELLOW, "'Bye!'") +#####B else +#####B cmsg_print(TERM_YELLOW, "'Are the monsters too tough? +#####B Do you want to leave?'") +#####B if (get_check("Really leave and fail the quest?") == +#####B FALSE) +#####B then +#####B cmsg_print(TERM_YELLOW, "'Go and get my +#####B amulet then!'") +#####B else +#####B cmsg_print(TERM_YELLOW, "'Awww. Never +#####B mind. It was only a bit of rabbits foot'") +#####B quest(AMULET_QUEST).status = +#####B QUEST_STATUS_FAILED +#####B cave_set_feat(7, 6, 6) +#####B cave_set_feat(12, 5, 60) +#####B end +#####B end +#####B return TRUE +#####B end +#####B return FALSE +#####Bend, + +This only looks complicated because of the nested 'if' statements. It's easy to +lose your way when doing this kind of thing, always make sure you close all the +statements and put the returns in the right place. [[[[[BHOOK_CHAT] functions have one +argument - the monster you are chatting to. As you can see, we perform a check +to make sure it's the right monster and then away we go.... If the player wants +to leave the quest without completion they talk to Hannah, who gives them a +chance to change their mind! If the player asks to leave the entrance to the +corridor is blocked off (the second cave_set_feat()) so that the user can't +then go and get the amulet. Gumband or Zangband players may at this point think +they've lost out on the rabbits foot of burglary! (they haven't though as it +doesn't exist in ToME). + +#####B[HOOK_CHAR_DUMP] = function() +#####B if (quest(AMULET_QUEST).status == QUEST_STATUS_FAILED) then +#####B print_hook("\n You chickened out of rescuing a necklace and +#####B made a little girl sad. ") +#####B elseif (quest(AMULET_QUEST).status == QUEST_STATUS_COMPLETED) or +#####B (quest(AMULET_QUEST).status == QUEST_STATUS_REWARDED) or +#####B (quest(AMULET_QUEST).status == QUEST_STATUS_FINISHED) then +#####B print_hook("\n You rescued little Hannah Cooke's necklace from +#####B the nasty monsters ") +#####B end +#####B return FALSE +#####Bend, + +This quite simply and obviously prints an appropriate line in the character +dump based on the status of the quest. The [[[[[B\n] bit ensures the text goes on a +new line, so make sure you include it! Also you should return FALSE as +returning TRUE will stop executing all the other character dump lines (and you +may get other quests not having their lines printed). + +=== A word about returning TRUE and FALSE === + +As I mentioned above, you need to be careful what you return when dealing with +HOOKS as you can mess up the game a bit. Bear in mind that if you add a +function to [[[[[BHOOK_GEN_QUEST], every time a quest is generated, that function will +run. If you return TRUE, then no further functions attached to that hook will +run. If you return FALSE, it continues processing functions on that hook. + +That is pretty much it. Do take a look at the other included scripts that I +haven't gone into any detail about in the files, as you'll pick up some useful +techniques there too. Especially worthy of note is the hina.lua file which uses +hooks outside of the quest structure and also global variables and variables in +a table. If you have any questions, let me know at the email addy below. + +Back to the *****lua.hlp*0[lua help index] . + + [[[[[gThis file by fearoffours (fearoffours@moppy.co.uk)] diff --git a/lib/mods/theme/help/lua_skil.txt b/lib/mods/theme/help/lua_skil.txt new file mode 100644 index 00000000..87385e5d --- /dev/null +++ b/lib/mods/theme/help/lua_skil.txt @@ -0,0 +1,342 @@ +|||||oy +#####R /----------------------------------------\ +#####R < Adding new skill-based powers > +#####R \----------------------------------------/ + +#####R=== Introduction === + +This is very much in the same vein as adding a racial/extra power, but has to +be tied into skills, and we're defining more than one spell at once. You should +have read the *****lua_intr.txt*0[scripting introduction] and +*****lua_pow.txt*0[racial power tutorial] before going much further. Both of the above files +contain some fairly fundamental information which you will find necessary for +full understanding of this file. + +#####R=== Getting started === + +Open construc.lua (you have downloaded the example scripts from +[[[[[Ghttp://www.moppy.co.uk/angband.htm], haven't you?). The idea behind this +script is that it adds a skill which affects you ability to build/knock down +stuff. It treats the equivalent of stone-to-mud and trap-door destruction +spells as if they were "building skills". It also adds quite a few high-level +'spells' which do funky things like carving out corridors and chambers in a +single turn, and building doors and stuff. Just think of it as if the person +who has plenty of skills in this area would be a builder-type with lots of +strength and constitution... + +In order to add these powers we're going to edit the s_info.txt file which +lives in the edit folder, and add a new skill, underneath the 'misc' tree, +called construction. The powers will then be accessed through the 'm' menu, in +a similar way to mindcraft or alchemy skills or such. (That is, no books are +needed to cast them, as we're treating them as a craft that has been learnt, +rather than spells.) Our fist line of the script file reads: + +#####BSKILL_CONSTRUCT = 57 + +This merely links the skill index that we'll be defining in s_info.txt to this +file. We'll come back to this at the end of the tutorial. + +#####Bconstructor_powers = add_magic + +In a similar way to the [[[[[Badd_power] function we called when we added the +Phoenix racial ability, this line calls a special function which we use to +define new skills. It follows a very specific, but easy to understand form. It +starts with a brace, which indicates the add_magic function will be storing +these values in a table. Don't worry about this too much, but understand that a +table starts and ends with braces [[[[[B{] and [[[[[B}] respectively. Each key +(or field name) takes the format [[[[[B"key" = value,] (the comma is +important!). + +#####B ["fail"] = function() +#####B msg_print("You decide now is a good time for a cuppa") +#####B end, +#####B ["stat"] = A_STR, +#####B ["get_level"] = function() +#####B return get_skill_scale(SKILL_CONSTRUCT, 50) +#####B end, +#####B ["spell_list"] = + +[[[[[B"fail"] is a function that is called whenever you ##fail to cast the +spells##. Here it does nothing spectacular. +[[[[[B"stat"] defines the stat used to cast the spells. Here it is strength. +Any other stat can be used, prefix it with [[[[[BA_]. +[[[[[B"get_level"] is used to determine the level of the spell. It's associated +with spells that increase in power the more points that are invested in the +associated skill. I know that's not terribly clear, I'll come back to it in a +moment. +[[[[[B"spell_list"] is just that, a list of all the spells. +Each of these four properties within the table must end with a comma. If a +function is defined in the property itself then we add the comma after the +closing [[[[[Bend]. Again compare with construct.lua to see it. Any line NOT +ending with a comma will cause a lua error on startup, probably of the type +[[[[[V'}' expected to close '{' at line <whatever>.] + +#####R=== The spell list === + +Each spell, within the [[[[[B"spell_list"] key has its own set of properties +that we need to define from a sub-table so we open another set of braces to +start the spell list, and then a third set of braces to start the first spell. +So with all this, our first spell looks like: + +#####B ["spell_list"] = +#####B { +#####B { +#####B ["name"] = +#####B ["desc"] = +#####B ["mana"] = +#####B ["level"] = +#####B ["fail"] = +#####B ["spell"] = +#####B ["info"] = +#####B }, + +[[[[[B"name"] is, as you would expect, the name of the spell, as you want it to +appear in the spell list when choosing a spell. The maximum number of +characters for this is 29. +[[[[[B"desc"] is the description received when you hit the capital letter of +that spell in the menu. (i.e., press 'a' to cast the first spell, but press 'A' +to receive info about the first spell. +[[[[[B"mana"] is the amount of mana required to cast the spell. +[[[[[B"level"] is the level required to use that spell (that's level of the (in +this case construction) skill, not character level!). +[[[[[B"fail"] is base fail rate. +[[[[[B"spell"] is the function that is executed when the spell is cast. Note +that it MUST take the form [[[[[Bfunction() blah end] even if you're calling +a C function directly. If you have a look at the end of the file, you'll see +the "rebuild dungeon" spell which is identical to the "alter_reality" spell. +However, rather than reading [[[[[B"spell" = alter_reality()], it reads: + +#####B["spell"] = function() +#####B alter_reality() +#####Bend, + +which appears to be a long way round to do the same thing, but this is how it +must be done. + +In a similar way, the [[[[[B"info"] key must begin with a [[[[[Bfunction()] +and return the value of what is to be displayed alongside the spell name, +level and mana in the spell list. The maximum number of characters that can be +displayed here is dependent on the width of the user's screen, but try to keep +it under 12 if you can, as this will fit in a standard 80x24 terminal screen. +The first character will need to be a space otherwise you'll have the info line +squashed right up against the fail rate and it will look odd. If you wish to +have this part blank in the spell list, you still need to return a value, so +just a single space will do : [[[[[Breturn " "] + +All of these keys are repeated for each spell, with each spell in its own +table (therefore, it's own set of braces). Again, check the lua file for +clarification. + +When entering the spells in the "spell_list", you must take care to specify +them in the order which they are gained, otherwise they display incorrectly in +the spell list. + +You should by now be experienced enough to understand most of what's going on +in the actual spell functions (especially if you dig around in the source a +bit, and check out Chris Hadgis' excellent *****lua_spel.txt*0[spell.pkg] helper +files. I'm not going to go through the whole file line by line, as this is +something you should do yourself, figuring out what's going on. I'm going to +examine a few of the things we haven't covered before though, so pay attention. + +#####R=== The get_level() function === + +Probably one of the most important functions that you see reappearing in the +file is the [[[[[Bget_level()] function. All this does is return the numerical +value of the power that is given as the first argument. So [[[[[Bget_level] +[[[[[B(constructor_power)] will return the current level of the constructor power. +Given that the level of this is taken directly from the construction skill, (we +defined that in the [[[[[B"get_level"] key, by saying [[[[[Bget_skill_scale] +[[[[[B(SKILL_CONSTRUCT, 50)] ) it will return the value of your construction skill. +[[[[[Bconstructor_power] is the name of the whole power, we named it thus on +the second line of the script! + +[[[[[Bget_level] takes the following arguments: [[[[[Bget_level(power, max, ] +[[[[[Bmin)]. The power is obviously which power we're taking the value from, and the +max and min allow you to define boundaries for the spell. For instance the +current maximum value that [[[[[Bget_level(constructor_power)] can return is +50, as that is the maximum number of skill points you can have in that skill. +If you were using this as the basis for the damage of a low-level bolt spell, +you might decide that having a damage of 50 would be too much (unlikely, but +still possible). You could therefore define a maximum value of 20 so that when +the value of the construction skill was over 50, the maximum value for +damage of that spell would be 20. To achieve this you'd have: +[[[[[Bget_level(constructor_power, 20)]. In a similar way, you can force the +minimum value of the spell to be higher than the actual construction skill +level, with a [[[[[Bget_level(constructor_power, 50, 15)]. This would be useful +say for spells that you wanted to be available when the construction skill +level reaches 10, but for whom you wanted a (for example) base damage of 15 +right from the word go. These re-scale values rather than capping them! + +You can leave out the minimum value as I have done above. You can also leave +the maximum value out (it will default to 50). If you want to specify a minimum +value though, you MUST specify a maximum value as well. + +As you have hopefully been able to tell, the [[[[[Bget_level()] function +enables us to have spells that increase in usefulness as you gain levels. Let's +take the "Dismantle" spell. The function in the [[[[[B"spell"] key is as +follows: + +#####Bfunction() +#####B local ret, dir, dam + +#####B if (get_level(constructor_powers, 50) >= 11) then +#####B ret, dir = get_aim_dir(); +#####B if (ret == FALSE) then return end +#####B fire_beam(GF_KILL_TRAP, dir, 1) +#####B else +#####B fire_ball(GF_KILL_TRAP, 0, 1, 1) +#####B end +#####Bend, + +The [[[[[Bif] statement is obviously what really interests us here. You'll +notice that this has the amendment of an [[[[[Belse] clause, which the [[[[[Bif] +statement we used in the previous tutorial did not. As you would expect, if the +condition on the first line of this statement is met, then the instructions +immediately below it are carried out. If the condition is not met, then the +statements that follow the [[[[[Belse] are executed. + +Coming back to the [[[[[Bget_level] function, we learnt from above, that the +[[[[[Bget_level] part of this function translates as, "if the value of the +construction_power level (which happens to be identical to the construction +skill level) is greater than or equal to 11, cast a beam of trap disarming in +the specified direction. (The first part of this is all straightforward, +getting a direction, and cancelling correctly if the player presses 'ESC'.) +Otherwise, cast a ball of trap disarming with a radius of one, centred on the +player." + +In the same way, as you look at the construc.lua file, you will see that +[[[[[Bget_level()] is used many times in this way, to increase the power of +detection spells, to change bolt spells to ball spells, to keep a constantly +increasing damage going, and so on. + +#####R=== Elseif's and things === + +If you want to provide more than one alternative condition, in an +[[[[[Bif-then-else] statement, you can use [[[[[Belseif]s which do what you +might expect. Take a look at the first spell, "Survey area", for an example of +this: + +#####Bif (get_level(constructor_powers, 50) >= 28) then +#####B wiz_lite() +#####Belseif (get_level(constructor_powers, 50) >= 15) then +#####B map_area() +#####B detect_traps(DEFAULT_RADIUS) +#####Belseif (get_level(constructor_powers, 50) >= 5) then +#####B detect_traps(DEFAULT_RADIUS) +#####B detect_stairs(DEFAULT_RADIUS) +#####B detect_doors(DEFAULT_RADIUS) +#####Belse +#####B detect_stairs(DEFAULT_RADIUS) +#####B detect_doors(DEFAULT_RADIUS) +#####Bend + +If the level of constructor powers is greater or equal to 28, then the function +[[[[[Bwiz_lite()] is performed, and no other part of the if statement is +executed. [[[[[Bwiz_lite()] is just the enlightenment spell. If it is less than +28, the next condition is examined: that if the level of constructor powers is +greater than or equal to 15, then [[[[[Bmap_area()](Magic mapping) and detect +traps are called. If the level of constructor power is less than 15, it moves +onto the next condition, which says that if the level of constructor power is +greater than 5, then detect stairs, traps and doors. If none of these +conditions are met,(that is, if the level of construction skill is less than 5) +then we just detect doors and stairs. + +You'll note that each of the detection spells includes a DEFAULT_RADIUS +constant. You could change this to a numerical value, or a variable defined +somewhere else in your script. eg [[[[[Bdetect_traps(2)] would detect traps +with a radius of 2 centred on the player. + +#####R=== Registering the skill type === + +This is what we do at the end of the file, and is what ties the powers we've +defined to the action of pressing the 'm' key in game. Once more we're calling +a special function [[[[[Badd_mkey()] which takes its arguments for a table. +There are only two keys in this table though which keeps things simple. + +#####Badd_mkey +#####B{ +#####B ["mkey"] = MKEY_CONSTRUCT_POWERS, +#####B ["fct"] = function() +#####B execute_magic(constructor_powers) +#####B energy_use = energy_use + 100; +#####B end +#####B} + +[[[[[B"mkey"] must be a UNIQUE value > 1000 . Here I've defined it as a +constant, [[[[[BMKEY_CONSTRUCT_POWERS], which has the value 1004. This value +we'll call again in the s_info.txt file. +[[[[[B"fct"] is the function that's called when the user presses the key in the +'m' menu. So here, it calls the [[[[[Bexecute_magic] function which actually +displays a list of powers for the user to choose from. The argument it takes is +the powers it will use (alchemy, mindcraft, etc., or in this case constructor), +and then the [[[[[Benergy_use] line tells the game to take one game turn to do +the action. + +#####R=== Adding the skill in s_info.txt === + +Take a look in the s_info.txt file, under the Misc section. You'll see, + +#####BN:57:Construction +#####BD:Ability to use constructor powers +#####BD:Construction powers use strength +#####BA:1004:Build or knock down stuff +#####BI:1000 + +The first line is the index of the skill; again this must be unique. The second +property is the name of the skill. The [[[[[BD] lines are the lines displayed +when the skill is highlighted in the skill screen. +The first entry on the [[[[[BA] line is the value of the [[[[[B"mkey"] we +defined in the [[[[[Badd_mkey] function in our script. The second entry is the +display for selecting the construction power in the 'm' menu. +The [[[[[BI] line is currently unused, but add a 1000 there anyway. That's what +all the others have so when it's introduced, at least it will affect your +powers identically to how it affects all the other powers. + +If you scroll to the very bottom of the file now, you'll see I've placed the +skill at the bottom of the Misc branch of the skills tree. I then made a new +class, constructor, which you can see in p_info.txt. + +That is all that is NEEDED when writing a script to add a skill - defining an +mkey using add_mkey, and defining any powers that are called in the +[[[[[B"fct"] (generally using [[[[[Badd_magic] ). + +And I've added the line + +#####Btome_dofile("construc.lua") + +in init.lua so the script is loaded on start-up! + +Below I'm going to talk in depth about a few other functions that you may find +useful in your scripting. + +#####R=== fire_bolt() and fire_beam() === + +In the last help file we looked at the routine for firing a ball - +[[[[[Bfire_ball()]. Here's a quick note about beams and bolts... +[[[[[Bfire_beam()] and [[[[[Bfire_bolt()] take 2 arguments: +[[[[[B(type, direction, damage)]. So in the dismantle spell we have the +direction passed from [[[[[Bget_aim_dir()] (the function that asks the player +for a direction), the type of damage is [[[[[BGF_KILL_TRAP], which as you might +expect disarms traps. And the damage is only 1 because it's not going to hurt +monsters, just dismantle traps. + +#####R=== set_oppose_elec() === + +OK here's another thing. Wander on down to the sparky_skills spell. After the +appropriate bolt/ball is fired, we have the line: + +#####Bif player.oppose_elec == 0 then +#####B set_oppose_elec(randint(10) + 20 + get_level(constructor_powers, 20)*3) +#####Bend + +This is the bit that grants temporary resist electricity. We've called the +function [[[[[Bset_oppose_elec(turns)], which sets the player's resist +electricity to "on" for the time specified in the argument "turns". We're only +calling this if the player is not already granted temporary resist electricity, +and we've linked the number of turns it is active to the level of the +construction skill. I've limited the maximum value of get_level to 20 in this +instance. A similar idea can be used for temporarily granting levitation, +extended infravision, protection against evil, resist fire, stuns, cuts and so +on and so on. Have a look in player.pkg in the source for a full list.... + + [[[[[gThis file by fearoffours (fearoffours@moppy.co.uk)] diff --git a/lib/mods/theme/help/lua_spel.txt b/lib/mods/theme/help/lua_spel.txt new file mode 100644 index 00000000..aa4a532b --- /dev/null +++ b/lib/mods/theme/help/lua_spel.txt @@ -0,0 +1,2150 @@ +|||||oy + +#####R /----------------------------------------\ +#####R < spell.pkg functions helper file > +#####R \----------------------------------------/ + +---------------------------------------------------------------------- + +#####R=== teleport_player_directed === + +#####GDeclaration + extern void teleport_player_directed(int rad, int dir); + +#####GFile + spells1.c + +#####GComment +/* + * Teleport player, using a distance and a direction as a rough guide. + * + * This function is not at all obsessive about correctness. + * This function allows teleporting into vaults (!) + */ + +#####GDescription +Teleport a player up to "rad" grids away roughly in "dir" direction. + +#####GParameters +> "rad" must not exceed 200. The distance teleported is a minimum of a + quarter of "rad". +> "dir" must be from 0 to 9. + *****fields.txt*0[direction] + +---------------------------------------------------------------------- + +#####R=== teleport_away === + +#####GDeclaration + extern void teleport_away(int m_idx, int dis); + +#####GFile + spells1.c + +#####GComment +/* + * Teleport a monster, normally up to "dis" grids away. + * + * Attempt to move the monster at least "dis/2" grids away. + * + * But allow variation to prevent infinite loops. + */ + +#####GDescription +Teleport monster indicated by "m_idx" up to "dis" grids away. + +#####GParameters +> "m_idx" is the index of the monster in m_list[]. +> "dis" must not exceed 200. The distance teleported is a minimum of a + quarter of "dis". + +---------------------------------------------------------------------- + +#####R=== teleport_player === + +#####GDeclaration + extern void teleport_player(int dis); + +#####GFile + spells1.c + +#####GComment +/* + * Teleport the player to a location up to "dis" grids away. + * + * If no such spaces are readily available, the distance may increase. + * Try very hard to move the player at least a quarter that distance. + */ + +#####GDescription +Teleport player up to "dis" grids away. + +#####GParameters +> "dis" must not exceed 200. The distance teleported is a minimum of a + quarter of "dis". + +---------------------------------------------------------------------- + +#####R=== teleport_player_to === + +#####GDeclaration + extern void teleport_player_to(int ny, int nx); + +#####GFile + spells1.c + +#####GComment +/* + * Teleport player to a grid near the given location + * + * This function is slightly obsessive about correctness. + * This function allows teleporting into vaults (!) + */ + +#####GDescription +Teleport player to a grid near the given location ("ny", "nx"). If +the location is empty, the player goes there, otherwise they go to +a grid as close as possible to the location. + +#####GParameters +> "ny" is the y co-ordinate of the location. +> "nx" is the x co-ordinate of the location. + +---------------------------------------------------------------------- + +#####R=== teleport_monster_to === + +#####GDeclaration + extern void teleport_monster_to(int m_idx, int ny, + int nx); + +#####GFile + spells1.c + +#####GComment +/* + * Teleport a monster to a grid near the given location + * + * This function is slightly obsessive about correctness. + */ + +#####GDescription +Teleport monster indicated by "m_idx" to a grid near the given +location ("ny", "nx"). If the location is empty, the monster goes +there, otherwise they go to a grid as close as possible to the +location. + +#####GParameters +> "m_idx" is the index of the monster in m_list[]. +> "ny" is the y co-ordinate of the location. +> "nx" is the x co-ordinate of the location. + +---------------------------------------------------------------------- + +#####R=== teleport_player_level === + +#####GDeclaration + extern void teleport_player_level(void); + +#####GFile + spells1.c + +#####GComment +/* + * Teleport the player one level up or down (random when legal) + */ + +#####GDescription +Teleport the player one level up or down at random. + +---------------------------------------------------------------------- + +#####R=== recall_player === + +#####GDeclaration + extern void recall_player(void); + +#####GFile + spells1.c + +#####GComment +/* + * Recall the player to town or dungeon + */ + +#####GDescription +Recall the player to town (if in dungeon) or dungeon (if in town). + +---------------------------------------------------------------------- + +#####R=== take_hit === + +#####GDeclaration + extern void take_hit(int damage, cptr kb_str); + +#####GFile + spells1.c + +#####GComment +/* + * Decreases players hit points and sets death flag if necessary + * + * XXX XXX XXX Invulnerability needs to be changed into a "shield" + * + * XXX XXX XXX Hack -- this function allows the user to save (or quit) + * the game when he dies, since the "You die." message is shown before + * setting the player to "dead". + */ + +#####GDescription +Reduce the player's current hit points by "damage" points. If the +player dies, "kb_str" is used to record what the player was killed by +(see high-score table). + +#####GParameters +> "damage" is the amount of damage. +> "kb_str" is a string describing what killed the player. + +---------------------------------------------------------------------- + +#####R=== take_sanity_hit === + +#####GDeclaration + extern void take_sanity_hit(int damage, cptr hit_from); + +#####GFile + spells1.c + +#####GComment +/* Decrease player's sanity. This is a copy of the function above. */ + +#####GDescription +Reduce the player's current sanity points by "damage" points. If the +player dies, "hit_from" is used to record what the player was killed +by (see high-score table). + +#####GParameters +> "damage" is the amount of damage. +> "hit_from" is a string describing what killed the player. + +---------------------------------------------------------------------- + +#####R=== project === + +#####GDeclaration + extern bool project(int who, int rad, int y, int x, + int dam, int typ, int flg); + +#####GFile + spells1.c + +#####GComment +/* + * Generic "beam"/"bolt"/"ball" projection routine. + * + * Input: + * who: Index of "source" monster (negative for "player") + * jk -- -2 for traps, only used with project_jump + * rad: Radius of explosion (0 = beam/bolt, 1 to 9 = ball) + * y,x: Target location (or location to travel "towards") + * dam: Base damage roll to apply to affected monsters (or player) + * typ: Type of damage to apply to monsters (and objects) + * flg: Extra bit flags (see PROJECT_xxxx in "defines.h") + * + * Return: + * TRUE if any "effects" of the projection were observed, else FALSE + * + * Allows a monster (or player) to project a beam/bolt/ball of a given kind + * towards a given location (optionally passing over the heads of interposing + * monsters), and have it do a given amount of damage to the monsters (and + * optionally objects) within the given radius of the final location. + * + * A "bolt" travels from source to target and affects only the target grid. + * A "beam" travels from source to target, affecting all grids passed through. + * A "ball" travels from source to the target, exploding at the target, and + * affecting everything within the given radius of the target location. + * + * Traditionally, a "bolt" does not affect anything on the ground, and does + * not pass over the heads of interposing monsters, much like a traditional + * missile, and will "stop" abruptly at the "target" even if no monster is + * positioned there, while a "ball", on the other hand, passes over the heads + * of monsters between the source and target, and affects everything except + * the source monster which lies within the final radius, while a "beam" + * affects every monster between the source and target, except for the casting + * monster (or player), and rarely affects things on the ground. + * + * Two special flags allow us to use this function in special ways, the + * "PROJECT_HIDE" flag allows us to perform "invisible" projections, while + * the "PROJECT_JUMP" flag allows us to affect a specific grid, without + * actually projecting from the source monster (or player). + * + * The player will only get "experience" for monsters killed by himself + * Unique monsters can only be destroyed by attacks from the player + * + * Only 256 grids can be affected per projection, limiting the effective + * "radius" of standard ball attacks to nine units (diameter nineteen). + * + * One can project in a given "direction" by combining PROJECT_THRU with small + * offsets to the initial location (see "line_spell()"), or by calculating + * "virtual targets" far away from the player. + * + * One can also use PROJECT_THRU to send a beam/bolt along an angled path, + * continuing until it actually hits something (useful for "stone to mud"). + * + * Bolts and Beams explode INSIDE walls, so that they can destroy doors. + * + * Balls must explode BEFORE hitting walls, or they would affect monsters + * on both sides of a wall. Some bug reports indicate that this is still + * happening in 2.7.8 for Windows, though it appears to be impossible. + * + * We "pre-calculate" the blast area only in part for efficiency. + * More importantly, this lets us do "explosions" from the "inside" out. + * This results in a more logical distribution of "blast" treasure. + * It also produces a better (in my opinion) animation of the explosion. + * It could be (but is not) used to have the treasure dropped by monsters + * in the middle of the explosion fall "outwards", and then be damaged by + * the blast as it spreads outwards towards the treasure drop location. + * + * Walls and doors are included in the blast area, so that they can be + * "burned" or "melted" in later versions. + * + * This algorithm is intended to maximise simplicity, not necessarily + * efficiency, since this function is not a bottleneck in the code. + * + * We apply the blast effect from ground zero outwards, in several passes, + * first affecting features, then objects, then monsters, then the player. + * This allows walls to be removed before checking the object or monster + * in the wall, and protects objects which are dropped by monsters killed + * in the blast, and allows the player to see all affects before he is + * killed or teleported away. The semantics of this method are open to + * various interpretations, but they seem to work well in practice. + * + * We process the blast area from ground-zero outwards to allow for better + * distribution of treasure dropped by monsters, and because it provides a + * pleasing visual effect at low cost. + * + * Note that the damage done by "ball" explosions decreases with distance. + * This decrease is rapid, grids at radius "dist" take "1/dist" damage. + * + * Notice the "napalm" effect of "beam" weapons. First they "project" to + * the target, and then the damage "flows" along this beam of destruction. + * The damage at every grid is the same as at the "centre" of a "ball" + * explosion, since the "beam" grids are treated as if they ARE at the + * centre of a "ball" explosion. + * + * Currently, specifying "beam" plus "ball" means that locations which are + * covered by the initial "beam", and also covered by the final "ball", except + * for the final grid (the epicentre of the ball), will be "hit twice", once + * by the initial beam, and once by the exploding ball. For the grid right + * next to the epicentre, this results in 150% damage being done. The centre + * does not have this problem, for the same reason the final grid in a "beam" + * plus "bolt" does not -- it is explicitly removed. Simply removing "beam" + * grids which are covered by the "ball" will NOT work, as then they will + * receive LESS damage than they should. Do not combine "beam" with "ball". + * + * The array "gy[],gx[]" with current size "grids" is used to hold the + * collected locations of all grids in the "blast area" plus "beam path". + * + * Note the rather complex usage of the "gm[]" array. First, gm[0] is always + * zero. Second, for N>1, gm[N] is always the index (in gy[],gx[]) of the + * first blast grid (see above) with radius "N" from the blast centre. Note + * that only the first gm[1] grids in the blast area thus take full damage. + * Also, note that gm[rad+1] is always equal to "grids", which is the total + * number of blast grids. + * + * Note that once the projection is complete, (y2,x2) holds the final location + * of bolts/beams, and the "epicentre" of balls. + * + * Note also that "rad" specifies the "inclusive" radius of projection blast, + * so that a "rad" of "one" actually covers 5 or 9 grids, depending on the + * implementation of the "distance" function. Also, a bolt can be properly + * viewed as a "ball" with a "rad" of "zero". + * + * Note that if no "target" is reached before the beam/bolt/ball travels the + * maximum distance allowed (MAX_RANGE), no "blast" will be induced. This + * may be relevant even for bolts, since they have a "1x1" mini-blast. + * + * Note that for consistency, we "pretend" that the bolt actually takes "time" + * to move from point A to point B, even if the player cannot see part of the + * projection path. Note that in general, the player will *always* see part + * of the path, since it either starts at the player or ends on the player. + * + * Hack -- we assume that every "projection" is "self-illuminating". + * + * Hack -- when only a single monster is affected, we automatically track + * (and recall) that monster, unless "PROJECT_JUMP" is used. + * + * Note that all projections now "explode" at their final destination, even + * if they were being projected at a more distant destination. This means + * that "ball" spells will *always* explode. + * + * Note that we must call "handle_stuff()" after affecting terrain features + * in the blast radius, in case the "illumination" of the grid was changed, + * and "update_view()" and "update_monsters()" need to be called. + */ + +#####GDescription +Generate a beam/bolt/ball starting from "who" with a radius of "rad" +at target grid "y,x" for "damage" points of "typ" damage. The beam/ +bolt/ball can have various properties as denoted by "flg". + +#####GParameters +> "who" is > 0 (index of monster in m_list[]), < 0 and + not -100 or -101 (player), -100 or -101 (trap). +> "rad" is 0 for a beam/bolt and 1-9 for a ball. +> "y" is the y co-ordinate of the target grid. +> "x" is the x co-ordinate of the target grid. +> "dam" is the number of points of damage. +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "flg" is the projection effect + *****fields.txt*0[PROJECT_fields] + +---------------------------------------------------------------------- + +#####R=== corrupt_player === + +#####GDeclaration + extern void corrupt_player(void); + +#####GFile + spells1.c + +#####GComment +(none) + +#####GDescription +Swap two of the players stats at random. + +---------------------------------------------------------------------- + +#####R=== grow_trees === + +#####GDeclaration + extern void grow_trees(int rad); + +#####GFile + spells2.c + +#####GComment +/* + * Grow trees + */ + +#####GDescription +Grow up to (("rad" x "rad") + 11) trees around the player. + +#####GParameters +> "rad" is the radius of the area where trees may grow. + +---------------------------------------------------------------------- + +#####R=== hp_player === + +#####GDeclaration + extern bool hp_player(int num); + +#####GFile + spells2.c + +#####GComment +/* + * Increase players hit points, notice effects + */ + +#####GDescription +Add "num" points to the player's current hit points. The total can +not exceed the maximum. + +#####GParameters +> "num" is the number of points to add. + +---------------------------------------------------------------------- + +#####R=== heal_insanity === + +#####GDeclaration + extern bool heal_insanity(int val); + +#####GFile + spells2.c + +#####GComment +/* Heal insanity. */ + +#####GDescription +Add "val" points to the player's current sanity points. The total can +not exceed the maximum. + +#####GParameters +> "val" is the number of points to add. + +---------------------------------------------------------------------- + +#####R=== warding_glyph === + +#####GDeclaration + extern void warding_glyph(void); + +#####GFile + spells2.c + +#####GComment +/* + * Leave a "glyph of warding" which prevents monster movement + */ + +#####GDescription +Place a glyph at the player's location. The location must be bare. + +---------------------------------------------------------------------- + +#####R=== explosive_rune === + +#####GDeclaration + extern void explosive_rune(void); + +#####GFile + spells2.c + +#####GComment +(none) + +#####GDescription +Place a minor glyph (explosive rune) at the player's location. The +location must be bare. + +---------------------------------------------------------------------- + +#####R=== do_dec_stat === + +#####GDeclaration + extern bool do_dec_stat(int stat, int mode); + +#####GFile + spells2.c + +#####GComment +/* + * Lose a "point" + */ + +#####GDescription +Attempt to reduce the player's "stat" statistic by a point. + +#####GParameters +> "stat" is the statistic + *****fields.txt*0[A_fields] +> "mode" is the type of decrease: temporary, normal, or permanent + *****fields.txt*0[STAT_DEC_fields] + +---------------------------------------------------------------------- + +#####R=== do_res_stat === + +#####GDeclaration + extern bool do_res_stat(int stat); + +#####GFile + spells2.c + +#####GComment +/* + * Restore lost "points" in a stat + */ + +#####GDescription +Restore the player's "stat" statistic. + +#####GParameters +> "stat" is the statistic + *****fields.txt*0[A_fields] + +---------------------------------------------------------------------- + +#####R=== do_inc_stat === + +#####GDeclaration + extern bool do_inc_stat(int stat); + +#####GFile + spells2.c + +#####GComment +/* + * Gain a "point" in a stat + */ + +#####GDescription +Increase the player's "stat" statistic by a point. + +#####GParameters +> "stat" is the statistic + *****fields.txt*0[A_fields] + +---------------------------------------------------------------------- + +#####R=== identify_pack === + +#####GDeclaration + extern void identify_pack(void); + +#####GFile + spells2.c + +#####GComment +/* + * Identify everything being carried. + * Done by a potion of "self knowledge". + */ + +#####GDescription +Identify all items in the inventory. + +---------------------------------------------------------------------- + +#####R=== remove_curse === + +#####GDeclaration + extern bool remove_curse(void); + +#####GFile + spells2.c + +#####GComment +/* + * Remove most curses + */ + +#####GDescription +Remove all curses except for heavy curses. + +---------------------------------------------------------------------- + +#####R=== remove_all_curse === + +#####GDeclaration + extern bool remove_all_curse(void); + +#####GFile + spells2.c + +#####GComment +/* + * Remove all curses + */ + +#####GDescription +Remove all curses including heavy curses. + +---------------------------------------------------------------------- + +#####R=== restore_level === + +#####GDeclaration + extern bool restore_level(void); + +#####GFile + spells2.c + +#####GComment +/* + * Restores any drained experience + */ + +#####GDescription +Restore all drained experience points (if any). + +---------------------------------------------------------------------- + +#####R=== self_knowledge === + +#####GDeclaration + extern void self_knowledge(FILE *fff); + +#####GFile + spells2.c + +#####GComment +/* + * self-knowledge... idea from nethack. Useful for determining powers and + * resistances of items. It saves the screen, clears it, then starts listing + * attributes, a screenful at a time. (There are a LOT of attributes to + * list. It will probably take 2 or 3 screens for a powerful character whose + * using several artifacts...) -CFT + * + * It is now a lot more efficient. -BEN- + * + * See also "identify_fully()". + * + * XXX XXX XXX Use the "show_file()" method, perhaps. + */ + +#####GDescription +Show all attributes including racial powers, mutations, and equipment +effects. + +#####GParameters +> "*ffff" points to a file (write info to file) or is NULL (write info + to screen). + +---------------------------------------------------------------------- + +#####R=== lose_all_info === + +#####GDeclaration + extern bool lose_all_info(void); + +#####GFile + spells2.c + +#####GComment +/* + * Forget everything + */ + +#####GDescription +Forget about objects and the map. + +---------------------------------------------------------------------- + +#####R=== detect_traps === + +#####GDeclaration + extern bool detect_traps(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all traps on current panel + */ + +#####GDescription +Detect all traps on current panel. + +---------------------------------------------------------------------- + +#####R=== detect_doors === + +#####GDeclaration + extern bool detect_doors(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all doors on current panel + */ + +#####GDescription +Detect all doors on current panel. + +---------------------------------------------------------------------- + +#####R=== detect_stairs === + +#####GDeclaration + extern bool detect_stairs(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all stairs on current panel + */ + +#####GDescription +Detect all stairs on current panel. + +---------------------------------------------------------------------- + +#####R=== detect_treasure === + +#####GDeclaration + extern bool detect_treasure(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect any treasure on the current panel + */ + +#####GDescription +Detect any treasure on the current panel. + +---------------------------------------------------------------------- + +Field: hack_no_detect_message +Value: FALSE + +---------------------------------------------------------------------- + +#####R=== detect_objects_gold === + +#####GDeclaration + extern bool detect_objects_gold(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all "gold" objects on the current panel + */ + +#####GDescription +Detect all objects with the TV_GOLD flag. + +---------------------------------------------------------------------- + +#####R=== detect_objects_normal === + +#####GDeclaration + extern bool detect_objects_normal(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all "normal" objects on the current panel + */ + +#####GDescription +Detect all objects without the TV_GOLD flag. + +---------------------------------------------------------------------- + +#####R=== detect_objects_magic === + +#####GDeclaration + extern bool detect_objects_magic(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all "magic" objects on the current panel. + * + * This will light up all spaces with "magic" items, including artifacts, + * ego-items, potions, scrolls, books, rods, wands, staves, amulets, rings, + * and "enchanted" items of the "good" variety. + * + * It can probably be argued that this function is now too powerful. + */ + +#####GDescription +Detect all "magic" objects which are artefacts, ego items, or have one +of the following flags - TV_AMULET, TV_RING, TV_BATERIE, TV_STAFF, +TV_WAND, TV_ROD, TV_ROD_MAIN, TV_SCROLL, TV_POTION, TV_POTION2, +TV_VALARIN_BOOK, TV_MAGERY_BOOK, TV_SHADOW_BOOK, TV_CHAOS_BOOK, +TV_SPIRIT_BOOK, TV_NETHER_BOOK, TV_DAEMON_BOOK, TV_CRUSADE_BOOK, +TV_SIGALDRY_BOOK, TV_SYMBIOTIC_BOOK, TV_MUSIC_BOOK. + +---------------------------------------------------------------------- + +#####R=== detect_monsters_normal === + +#####GDeclaration + extern bool detect_monsters_normal(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all "normal" monsters on the current panel + */ + +#####GDescription +Detect all non-invisible monsters (without RF2_INVISIBLE). + +---------------------------------------------------------------------- + +#####R=== detect_monsters_invis === + +#####GDeclaration + extern bool detect_monsters_invis(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all "invisible" monsters on current panel + */ + +#####GDescription +Detect all invisible monsters (with RF2_INVISIBLE). + +---------------------------------------------------------------------- + +#####R=== detect_monsters_evil === + +#####GDeclaration + extern bool detect_monsters_evil(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all "evil" monsters on current panel + */ + +#####GDescription +Detect all evil monsters (with RF3_EVIL). + +---------------------------------------------------------------------- + +#####R=== detect_monsters_good === + +#####GDeclaration + extern bool detect_monsters_good(void); + +#####GFile + spells2.c + +#####GComment +/* Detect good monsters */ + +#####GDescription +Detect all good monsters (with RF3_GOOD). + +---------------------------------------------------------------------- + +#####R=== detect_monsters_xxx === + +#####GDeclaration + extern bool detect_monsters_xxx(u32b match_flag); + +#####GFile + spells2.c + +#####GComment +/* + * A "generic" detect monsters routine, tagged to flags3 + */ + +#####GDescription +Detect all monsters with "match_flag" flag. + +#####GParameters +> "match_flag" can be any RF3_ flag (see defines.h) but only + RF3_DEMON, RF3_UNDEAD, RF3_GOOD work. + +---------------------------------------------------------------------- + +#####R=== detect_monsters_string === + +#####GDeclaration + extern bool detect_monsters_string(cptr); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all (string) monsters on current panel + */ + +#####GDescription +Detect all monsters whose default monster character matches a +character pointed to by "cptr". + +#####GParameters +> "cptr" is a pointer to a single character, eg 'Z' for hounds. For + available characters, see the "symbol" field of the graphics (G) + line of r_info.txt. + +---------------------------------------------------------------------- + +#####R=== detect_monsters_nonliving === + +#####GDeclaration + extern bool detect_monsters_nonliving(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect all "nonliving", "undead" or "demonic" monsters on current panel + */ + +#####GDescription +Detect all non-living monsters (with RF3_NONLIVING, RF3_UNDEAD, or +RF3_DEMON). + +---------------------------------------------------------------------- + +#####R=== detect_all === + +#####GDeclaration + extern bool detect_all(void); + +#####GFile + spells2.c + +#####GComment +/* + * Detect everything + */ + +#####GDescription +Detects traps, doors, stairs, treasure, gold objects, normal objects, +invisible monsters, normal (visible) monsters. + +---------------------------------------------------------------------- + +#####R=== stair_creation === + +#####GDeclaration + extern void stair_creation(void); + +#####GFile + spells2.c + +#####GComment +/* + * Create stairs at the player location + */ + +#####GDescription +Create stairs at the player location. This is not allowed if the grid +is not empty, the player is not in a dungeon, the player is on a +special level, the player is in an arena or quest. If the player is +in the town or wilderness the stairs will go down. If the player is +on a quest level or at the bottom of a dungeon, the stairs will go up. +Otherwise there is an even chance the stairs will go up or down. + +---------------------------------------------------------------------- + +#####R=== wall_stone === + +#####GDeclaration + extern bool wall_stone(void); + +#####GFile + spells2.c + +#####GComment +(none) + +#####GDescription +Create a stone wall on the player's grid. This function uses the +project() function to create the stone wall. Apparently zero can be +used as the "who" parameter for the player. See details for the +project() function elsewhere in this document. + +---------------------------------------------------------------------- + +#####R=== create_artifact === + +#####GDeclaration + extern bool create_artifact(object_type *o_ptr, + bool a_scroll, bool get_name); + +#####GFile + randart.c + +#####GComment +(none) + +#####GDescription +Create an artifact from object "*optr". + +#####GParameters +> "*optr* is a pointer to an object +> "a_scroll" is true if the artifact is created by reading a scroll +> "get_name" is true if the artifact is to be named by the player (if + a_scroll is true) or created randomly (a_scroll is false), or false + if an inscription is used. + +---------------------------------------------------------------------- + +#####R=== ident_spell === + +#####GDeclaration + extern bool ident_spell(void); + +#####GFile + spells2.c + +#####GComment +/* + * Identify an object in the inventory (or on the floor) + * This routine does *not* automatically combine objects. + * Returns TRUE if something was identified, else FALSE. + */ + +#####GDescription +Identify an object in the inventory (or on the floor). + +---------------------------------------------------------------------- + +#####R=== identify_fully === + +#####GDeclaration + extern bool identify_fully(void); + +#####GFile + spells2.c + +#####GComment +/* + * Fully "identify" an object in the inventory -BEN- + * This routine returns TRUE if an item was identified. + */ + +#####GDescription +Fully "identify" an object in the inventory (or on the floor). + +---------------------------------------------------------------------- + +#####R=== recharge === + +#####GDeclaration + extern bool recharge(int num); + +#####GFile + spells2.c + +#####GComment +/* + * Recharge a wand/staff/rod from the pack or on the floor. + * This function has been rewritten in Oangband. -LM- + * + * Mage -- Recharge I --> recharge(90) + * Mage -- Recharge II --> recharge(150) + * Mage -- Recharge III --> recharge(220) + * + * Priest or Necromancer -- Recharge --> recharge(140) + * + * Scroll of recharging --> recharge(130) + * Scroll of *recharging* --> recharge(200) + * + * It is harder to recharge high level, and highly charged wands, + * staffs, and rods. The more wands in a stack, the more easily and + * strongly they recharge. Staffs, however, each get fewer charges if + * stacked. + * + * XXX XXX XXX Beware of "sliding index errors". + */ + +#####GDescription +Recharge an object in the inventory (or on the floor) with "num" +power. + +#####GParameters +> "num" is the power used in recharging. It is compared to the + object's level to determine whether the item is recharged + successfully or destroyed. If it is recharged, it also determines + how many charges are added, or how much recharge time is reduced. + +---------------------------------------------------------------------- + +#####R=== aggravate_monsters === + +#####GDeclaration + extern void aggravate_monsters(int who); + +#####GFile + spells2.c + +#####GComment +/* + * Wake up all monsters, and speed up "los" monsters. + */ + +#####GDescription +Aggravate monsters, originating from "who". + +#####GParameters +> "who" is the index of monster in m_list[] (1 if it is the player) + which triggers the aggravation; + +---------------------------------------------------------------------- + +#####R=== genocide === + +#####GDeclaration + extern bool genocide(bool player_cast); + +#####GFile + spells2.c + +#####GComment +(none) + +#####GDescription +Genocide a monster race. + +#####GParameters +> "player_cast" is true if the player cast the spell so the player can + take damage. + +---------------------------------------------------------------------- + +#####R=== mass_genocide === + +#####GDeclaration + extern bool mass_genocide(bool player_cast); + +#####GFile + spells2.c + +#####GComment +/* + * Delete all nearby (non-unique) monsters + */ + +#####GDescription +Delete all nearby (non-unique) monsters. + +#####GParameters +> "player_cast" is true if the player cast the spell so the player can + take damage. + +---------------------------------------------------------------------- + +#####R=== probing === + +#####GDeclaration + extern bool probing(void); + +#####GFile + spells2.c + +#####GComment +/* + * Probe nearby monsters + */ + +#####GDescription +Probe all nearby monsters. + +---------------------------------------------------------------------- + +#####R=== banish_evil === + +#####GDeclaration + extern bool banish_evil(int dist); + +#####GFile + spells2.c + +#####GComment +/* + * Banish evil monsters + */ + +#####GDescription +Banish nearby evil monsters doing "dist" points of GF_AWAY_EVIL +damage. + +#####GParameters +> "dist" is the amount of damage done to each monster. + +---------------------------------------------------------------------- + +#####R=== dispel_evil === + +#####GDeclaration + extern bool dispel_evil(int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Dispel evil monsters + */ + +#####GDescription +Dispel nearby evil monsters doing "dam" points of GF_DISP_EVIL +damage. + +#####GParameters +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== dispel_good === + +#####GDeclaration + extern bool dispel_good(int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Dispel good monsters + */ + +#####GDescription +Dispel nearby good monsters doing "dam" points of GF_DISP_GOOD +damage. + +#####GParameters +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== dispel_undead === + +#####GDeclaration + extern bool dispel_undead(int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Dispel undead monsters + */ + +#####GDescription +Dispel nearby undead monsters doing "dam" points of GF_DISP_UNDEAD +damage. + +#####GParameters +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== dispel_monsters === + +#####GDeclaration + extern bool dispel_monsters(int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Dispel all monsters + */ + +#####GDescription +Dispel all nearby monsters doing "dam" points of GF_DISP_ALL +damage. + +#####GParameters +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== dispel_living === + +#####GDeclaration + extern bool dispel_living(int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Dispel 'living' monsters + */ + +#####GDescription +Dispel nearby living monsters doing "dam" points of GF_DISP_LIVING +damage. + +#####GParameters +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== dispel_demons === + +#####GDeclaration + extern bool dispel_demons(int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Dispel demons + */ + +#####GDescription +Dispel nearby demon monsters doing "dam" points of GF_DISP_DEMON +damage. + +#####GParameters +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== turn_undead === + +#####GDeclaration + extern bool turn_undead(void); + +#####GFile + spells2.c + +#####GComment +/* + * Turn undead + */ + +#####GDescription +Turn nearby undead monsters doing a point of GF_TURN_UNDEAD damage for +each player level. + +---------------------------------------------------------------------- + +#####R=== wipe === + +#####GDeclaration + extern void wipe(int y1, int x1, int r); + +#####GFile + spells2.c + +#####GComment +/* + * Wipe -- Empties a part of the dungeon + */ + +#####GDescription +Delete monsters and objects from an area of the dungeon centred at +grid "y1,x1" for a radius "r". This does not work on special levels or +quests. The player may be blinded. The player forgets the affected +area and it becomes dark. All grids become floor. + +#####GParameters +> "y1" is the y-coordinate of the wipe's origin. +> "x1" is the x-coordinate of the wipe's origin. +> "r" is the radius of the wipe. + +---------------------------------------------------------------------- + +#####R=== destroy_area === + +#####GDeclaration + extern void destroy_area(int y1, int x1, int r, + bool full); + +#####GFile + spells2.c + +#####GComment +/* + * The spell of destruction + * + * This spell "deletes" monsters (instead of "killing" them). + * + * Later we may use one function for both "destruction" and + * "earthquake" by using the "full" to select "destruction". + */ + +#####GDescription +Delete monsters and objects from an area of the dungeon centred at +grid "y1,x1" for a radius "r". This does not work on special levels or +quests. The epicentre is NOT affected. The player may be blinded. The +player forgets the affected area and it becomes dark. The grids can +become granite, quartz, magma, or floor. + +#####GParameters +> "y1" is the y-coordinate of the destruction's origin. +> "x1" is the x-coordinate of the destruction's origin. +> "r" is the radius of the destruction. +> "full" is currently unused. + +---------------------------------------------------------------------- + +#####R=== earthquake === + +#####GDeclaration + extern void earthquake(int cy, int cx, int r); + +#####GFile + spells2.c + +#####GComment +/* + * Induce an "earthquake" of the given radius at the given location. + * + * This will turn some walls into floors and some floors into walls. + * + * The player will take damage and "jump" into a safe grid if possible, + * otherwise, he will "tunnel" through the rubble instantaneously. + * + * Monsters will take damage, and "jump" into a safe grid if possible, + * otherwise they will be "buried" in the rubble, disappearing from + * the level in the same way that they do when genocided. + * + * Note that thus the player and monsters (except eaters of walls and + * passers through walls) will never occupy the same grid as a wall. + * Note that as of now (2.7.8) no monster may occupy a "wall" grid, even + * for a single turn, unless that monster can pass_walls or kill_walls. + * This has allowed massive simplification of the "monster" code. + */ + +#####GDescription +Create an earthquake centred on grid "cy,cx" with a radius of "r". +This does not work on quest levels. The epicentre is NOT affected. +Only about 15% of the grids are affected. The player takes 300 points +of damage if they can't be moved to a safe grid, otherwise damage is +from 10 to 40 points. The player forgets the affected area and it +becomes dark. The grids can become granite, quartz, magma, or floor. + +#####GParameters +Parameters: +> "cy" is the y-coordinate of the earthquake origin. +> "cx" is the x-coordinate of the earthquake origin. +> "r" is the radius of the earthquake. + +---------------------------------------------------------------------- + +#####R=== map_area === + +#####GDeclaration + extern void map_area(void); + +#####GFile + cave.c + +#####GComment +/* + * Hack -- map the current panel (plus some) ala "magic mapping" + */ + +#####GDescription +Map the current panel plus up to 10 grids up and down, and up to 20 +grids left and right. + +---------------------------------------------------------------------- + +#####R=== wiz_lite === + +#####GDeclaration + extern void wiz_lite(void); + +#####GFile + cave.c + +#####GComment +/* + * Light up the dungeon using "clairvoyance" + * + * This function "illuminates" every grid in the dungeon, memorises all + * "objects", memorises all grids as with magic mapping, and, under the + * standard option settings (view_perma_grids but not view_torch_grids) + * memorises all floor grids too. + * + * Note that if "view_perma_grids" is not set, we do not memorise floor + * grids, since this would defeat the purpose of "view_perma_grids", not + * that anyone seems to play without this option. + * + * Note that if "view_torch_grids" is set, we do not memorise floor grids, + * since this would prevent the use of "view_torch_grids" as a method to + * keep track of what grids have been observed directly. + */ + +#####GDescription +Light up the entire dungeon and show all monsters and objects. + +---------------------------------------------------------------------- + +#####R=== wiz_lite_extra === + +#####GDeclaration + extern void wiz_lite_extra(void); + +#####GFile + cave.c + +#####GComment +(none) + +#####GDescription +Light up the entire dungeon and show all monsters and objects. All +squares are lit and remembered. + +---------------------------------------------------------------------- + +#####R=== wiz_dark === + +#####GDeclaration + extern void wiz_dark(void); + +#####GFile + cave.c + +#####GComment +/* + * Forget the dungeon map (ala "Thinking of Maud..."). + */ + +#####GDescription +Forget all grids and objects. All grids become dark. + +---------------------------------------------------------------------- + +#####R=== lite_room === + +#####GDeclaration + extern void lite_room(int y1, int x1); + +#####GFile + spells2.c + +#####GComment +/* + * Illuminate any room containing the given location. + */ + +#####GDescription +Light up the room (if any) of grid "y1,x1". + +#####GParameters +> "y1" is the y-coordinate of the grid. +> "x1" is the x-coordinate of the grid. + +---------------------------------------------------------------------- + +#####R=== unlite_room === + +#####GDeclaration + extern void unlite_room(int y1, int x1); + +#####GFile + spells2.c + +#####GComment +/* + * Darken all rooms containing the given location + */ + +#####GDescription +Darken all rooms (if any) of grid "y1,x1". + +#####GParameters +> "y1" is the y-coordinate of the grid. +> "x1" is the x-coordinate of the grid. + +---------------------------------------------------------------------- + +#####R=== lite_area === + +#####GDeclaration + extern bool lite_area(int dam, int rad); + +#####GFile + spells2.c + +#####GComment +/* + * Hack -- call light around the player + * Affect all monsters in the projection radius + */ + +#####GDescription +Light up the room (if any) of the player's grid. Monsters take "dam" +points of GF_LITE_WEAK damage if they are within "r" grids of the +player. + +#####GParameters +> "dam" is the number of points of damage. +> "rad" is the radius of the effect of the damage. + +---------------------------------------------------------------------- + +#####R=== unlite_area === + +#####GDeclaration + extern bool unlite_area(int dam, int rad); + +#####GFile + spells2.c + +#####GComment +/* + * Hack -- call darkness around the player + * Affect all monsters in the projection radius + */ + +#####GDescription +Darken the room (if any) of the player's grid. Monsters take "dam" +points of GF_DARK_WEAK damage if they are within "r" grids of the +player. + +#####GParameters +> "dam" is the number of points of damage. +> "rad" is the radius of the effect of the damage. + +---------------------------------------------------------------------- + +#####R=== fire_ball_beam === + +#####GDeclaration + extern bool fire_ball_beam(int typ, int dir, int dam, + int rad); + +#####GFile + spells2.c + +#####GComment +/* + * Cast a ball-beamed spell + * Stop if we hit a monster, act as a "ball" + * Allow "target" mode to pass over monsters + * Affect grids, objects, and monsters + */ + +#####GDescription +Cast a ball-beamed spell of type "typ" in direction "dir" for damage +"dam" points with a radius of "rad" grids. + +#####GParameters +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dir" must be from 0 to 9. + *****fields.txt*0[direction] +> "dam" is the number of points of damage. +> "rad" is the radius of the effect of the damage (must be <= 16). + +---------------------------------------------------------------------- + +#####R=== fire_ball === + +#####GDeclaration + extern bool fire_ball(int typ, int dir, int dam, int rad); + +#####GFile + spells2.c + +#####GComment +/* + * Cast a ball spell + * Stop if we hit a monster, act as a "ball" + * Allow "target" mode to pass over monsters + * Affect grids, objects, and monsters + */ + +#####GDescription +Cast a ball spell of type "typ" in direction "dir" for "dam" points of +damage. The ball has a radius of "rad" grids. + +#####GParameters +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dir" must be from 0 to 9. + *****fields.txt*0[direction] +> "dam" is the number of points of damage. +> "rad" is the radius of the effect of the damage (must be <= 16). + +---------------------------------------------------------------------- + +#####R=== fire_bolt === + +#####GDeclaration + extern bool fire_bolt(int typ, int dir, int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Cast a bolt spell + * Stop if we hit a monster, as a "bolt" + * Affect monsters (not grids or objects) + */ + +#####GDescription +Cast a bolt spell of type "typ" in direction "dir" for "dam" points of +damage. + +#####GParameters +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dir" must be from 0 to 9 + *****fields.txt*0[direction] +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== fire_beam === + +#####GDeclaration + extern bool fire_beam(int typ, int dir, int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Cast a beam spell + * Pass through monsters, as a "beam" + * Affect monsters (not grids or objects) + */ + +#####GDescription +Cast a beam spell of type "typ" in direction "dir" for "dam" points of +damage. + +#####GParameters +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dir" must be from 0 to 9. + *****fields.txt*0[direction] +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== fire_druid_ball === + +#####GDeclaration + extern bool fire_druid_ball(int typ, int dir, int dam, + int rad); + +#####GFile + spells2.c + +#####GComment +/* + * Cast a druidic ball spell + * Stop if we hit a monster, act as a "ball" + * Allow "target" mode to pass over monsters + * Affect grids, objects, and monsters + */ + +#####GDescription +Cast a ball spell of type "typ" in direction "dir" for "dam" points of +damage. The ball has a radius of "rad" grids. The spell follows a mana +path. + +#####GParameters +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dir" must be from 0 to 9. + *****fields.txt*0[direction] +> "dam" is the number of points of damage. +> "rad" is the radius of the effect of the damage (must be <= 16). + +---------------------------------------------------------------------- + +#####R=== fire_druid_bolt === + +#####GDeclaration + extern bool fire_druid_bolt(int typ, int dir, int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Cast a druidic bolt spell + * Stop if we hit a monster, as a "bolt" + * Affect monsters (not grids or objects) + */ + +#####GDescription +Cast a bolt spell of type "typ" in direction "dir" for "dam" points of +damage. The spell follows a mana path. + +#####GParameters +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dir" must be from 0 to 9. + *****fields.txt*0[direction] +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== fire_druid_beam === + +#####GDeclaration + extern bool fire_druid_beam(int typ, int dir, int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Cast a druidistic beam spell + * Pass through monsters, as a "beam" + * Affect monsters (not grids or objects) + */ + +#####GDescription +Cast a beam spell of type "typ" in direction "dir" for "dam" points of +damage. The spell follows a mana path. + +#####GParameters +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dir" must be from 0 to 9. + *****fields.txt*0[direction] +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== fire_bolt_or_beam === + +#####GDeclaration + extern bool fire_bolt_or_beam(int prob, int typ, int dir, + int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Cast a bolt spell, or rarely, a beam spell + */ + +#####GDescription +Cast a beam (chance of "prob" in 100) or bolt spell of type "typ" in +direction "dir" for "dam" points of damage. + +#####GParameters +> "prob" is the number of times out of 100 that the bolt will actually + be a beam. Obviously this value should range from 1 to 99 (0 will + always give a beam, 100 or higher will always give a beam. There are + separate functions for these cases). +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dir" must be from 0 to 9. + *****fields.txt*0[direction] +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + +#####R=== alchemy === + +#####GDeclaration + extern bool alchemy(void); + +#####GFile + spells2.c + +#####GComment +/* Turns an object into gold, gain some of its value in a shop */ + +#####GDescription +The player selects an object (and quantity if it applies) from the +inventory or the floor and attempts to turn it into gold. If the +price of the item is < 0 then the player gains nothing (fool's gold), +otherwise the player gets a third of the price in gold. Artifacts are +not affected. + +---------------------------------------------------------------------- + +#####R=== alter_reality === + +#####GDeclaration + extern void alter_reality(void); + +#####GFile + spells2.c + +#####GComment +(none) + +#####GDescription +The player leaves the level immediately. + +---------------------------------------------------------------------- + +#####R=== teleport_swap === + +#####GDeclaration + extern void teleport_swap(int dir); + +#####GFile + spells2.c + +#####GComment +(none) + +#####GDescription +Player swaps places with target in direction "dir". The target must be +a monster. It will not work if the space-time continuum can not be +disrupted or if the monster resists teleportation. + +---------------------------------------------------------------------- + +#####R=== project_meteor === + +#####GDeclaration + extern void project_meteor(int radius, int typ, int dam, + u32b flg); + +#####GFile + spells2.c + +#####GComment +/* + * Apply a "project()" a la meteor shower + */ + +#####GDescription +Generate between "rad" and "rad" x 2 ball spells of type "typ" for +"dam" points of damage. The ball can have various properties as +denoted by "flg". + +#####GParameters +> "rad" is the minimum number of balls created. "rad" + randint("rad") + balls are created. Each ball has a radius of 2 grids. Each target + grid is within 5 grids of the player. +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dam" is the number of points of damage. +> "flg" is the projection effect + *****fields.txt*0[PROJECT_fields] + +---------------------------------------------------------------------- + +#####R=== passwall === + +#####GDeclaration + extern bool passwall(int dir, bool safe); + +#####GFile + spells2.c + +#####GComment +/* + * Send the player shooting through walls in the given direction until + * they reach a non-wall space, or a monster, or a permanent wall. + */ + +#####GDescription +Move the player through walls in direction "dir". if "safe" then the +player can not end up in a wall - if they do, the wall is replaced by +a floor. This does not work in the wilderness, on quest levels, or if +teleport is not allowed. Stopping on monsters or inside vaults is not +allowed. + +#####GParameters +> "dir" must be from 0 to 9. It can not be 5. + *****fields.txt*0[direction] +> "safe" must be true if the player is not to be trapped in a wall + when the movement is finished. + +---------------------------------------------------------------------- + +#####R=== project_hook === + +#####GDeclaration + extern bool project_hook(int typ, int dir, int dam, + int flg); + +#####GFile + spells2.c + +#####GComment +/* + * Hack -- apply a "projection()" in a direction (or at the target) + */ + +#####GDescription +Generate a beam/bolt of type "typ" in direction "dir" (or at a target) +for "dam" points of damage. The beam/bolt can have various properties +as denoted by "flg". + +#####GParameters +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dir" must be from 0 to 9. 5 means use the current target. + *****fields.txt*0[direction] +> "dam" is the number of points of damage. +> "flg" is the projection effect + *****fields.txt*0[PROJECT_fields] + +---------------------------------------------------------------------- + +#####R=== reset_recall === + +#####GDeclaration + extern bool reset_recall(void); + +#####GFile + spells2.c + +#####GComment +(none) + +#####GDescription +Ask the player for a dungeon and appropriate level within the dungeon. +The player can not specify a dungeon they have not gone to yet. If the +player chooses levels 99 or 100, the level is set to 98. + +---------------------------------------------------------------------- + +#####R=== get_aim_dir === + +#####GDeclaration + extern bool get_aim_dir(int *dp = 0); + +#####GFile + xtra2.c + +#####GComment +/* + * Get an "aiming direction" from the user. + * + * The "dir" is loaded with 1,2,3,4,6,7,8,9 for "actual direction", and + * "0" for "current target", and "-1" for "entry aborted". + * + * Note that "Force Target", if set, will pre-empt user interaction, + * if there is a usable target already set. + * + * Note that confusion over-rides any (explicit?) user choice. + */ + +#####GDescription +Get an aiming direction from the user and store it in "dp". A target +can be selected. If the player is confused, the direction will be +random. + +#####GParameters +> "dp" = player direction. + +---------------------------------------------------------------------- + +#####R=== project_hack === + +#####GDeclaration + extern bool project_hack(int typ, int dam); + +#####GFile + spells2.c + +#####GComment +/* + * Apply a "project()" directly to all viewable monsters + * + * Note that affected monsters are NOT auto-tracked by this usage. + */ + +#####GDescription +Generate beam/bolt spells of type "typ" for "dam" points of damage to +all viewable monsters in line of site. + +#####GParameters +> "typ" is the type of damage + *****fields.txt*0[GF_fields] +> "dam" is the number of points of damage. + +---------------------------------------------------------------------- + + +Back to the *****lua.hlp*0[lua help index] . + + [[[[[gThis file by Chris Hadgis] diff --git a/lib/mods/theme/help/lua_util.txt b/lib/mods/theme/help/lua_util.txt new file mode 100644 index 00000000..8886a2b4 --- /dev/null +++ b/lib/mods/theme/help/lua_util.txt @@ -0,0 +1,898 @@ +|||||oy + +#####R /----------------------------------------\ +#####R < util.pkg functions helper file > +#####R \----------------------------------------/ + +---------------------------------------------------------------------- + +#####R=== bst === + +#####GDeclaration + s32b bst(s32b what, s32b t); + +#####GFile + util.c + +#####GComment +/* + * Break scalar time + */ + +#####GDescription +Return the minute, hour, day, or year for turn "t". One turn takes 7.5 +seconds. + +#####GParameters +> "what" is the unit to be returned and must be one of + MINUTE (number of turns per minute, which is 8) + HOUR (number of turns per hour, which is 480) + DAY (number of turns per day, which is 11,520) + YEAR (number of turns per year, which is 4,204,800) +> "t" is the number of turns. + +---------------------------------------------------------------------- + +#####R=== path_build === + +#####GDeclaration + errr path_build(char *buf, int max, cptr path, cptr file); + +#####GFile + util.c + +#####GComment +/* +* Create a new path by appending a file (or directory) to a path +* +* This requires no special processing on simple machines, except +* for verifying the size of the filename, but note the ability to +* bypass the given "path" with certain special file-names. +* +* Note that the "file" may actually be a "sub-path", including +* a path and a file. +* +* Note that this function yields a path which must be "parsed" +* using the "parse" function above. +*/ + +#####GDescription +Append file "file" to path "path" and return the result in "buf". The +length of "buf" is a maximum of "max" characters. If "file" starts +with '~' then return "file". If "file" starts with the path separator +and the path separator is not blank then return "file". If there is no +path then return "file". Otherwise return "path" + path separator + +"file". The path separator is defined in "H-config.h". + +#####GParameters +> "buf" contains the new path. +> "max" is the maximum number of characters allowed in "buf". +> "path" is the original path. +> "file" is the original file. + +---------------------------------------------------------------------- + +#####R=== move_cursor === + +#####GDeclaration + void move_cursor(int row, int col); + +#####GFile + util.c + +#####GComment +/* +* Move the cursor +*/ + +#####GDescription +Move the cursor to row "row" and column "col". + +#####GParameters +> "row" is the row the cursor is to be moved to. +> "col" is the column the cursor is to be moved to. + +---------------------------------------------------------------------- + +#####R=== inkey === + +#####GDeclaration + char inkey(void); + +#####GFile + util.c + +#####GComment +/* +* Get a keypress from the user. +* +* This function recognises a few "global parameters". These are variables +* which, if set to TRUE before calling this function, will have an effect +* on this function, and which are always reset to FALSE by this function +* before this function returns. Thus they function just like normal +* parameters, except that most calls to this function can ignore them. +* +* If "inkey_xtra" is TRUE, then all pending keypresses will be flushed, +* and any macro processing in progress will be aborted. This flag is +* set by the "flush()" function, which does not actually flush anything +* itself, but rather, triggers delayed input flushing via "inkey_xtra". +* +* If "inkey_scan" is TRUE, then we will immediately return "zero" if no +* keypress is available, instead of waiting for a keypress. +* +* If "inkey_base" is TRUE, then all macro processing will be bypassed. +* If "inkey_base" and "inkey_scan" are both TRUE, then this function will +* not return immediately, but will wait for a keypress for as long as the +* normal macro matching code would, allowing the direct entry of macro +* triggers. The "inkey_base" flag is extremely dangerous! +* +* If "inkey_flag" is TRUE, then we will assume that we are waiting for a +* normal command, and we will only show the cursor if "hilite_player" is +* TRUE (or if the player is in a store), instead of always showing the +* cursor. The various "main-xxx.c" files should avoid saving the game +* in response to a "menu item" request unless "inkey_flag" is TRUE, to +* prevent savefile corruption. +* +* If we are waiting for a keypress, and no keypress is ready, then we will +* refresh (once) the window which was active when this function was called. +* +* Note that "back-quote" is automatically converted into "escape" for +* convenience on machines with no "escape" key. This is done after the +* macro matching, so the user can still make a macro for "backquote". +* +* Note the special handling of "ascii 30" (ctrl-caret, aka ctrl-shift-six) +* and "ascii 31" (ctrl-underscore, aka ctrl-shift-minus), which are used to +* provide support for simple keyboard "macros". These keys are so strange +* that their loss as normal keys will probably be noticed by nobody. The +* "ascii 30" key is used to indicate the "end" of a macro action, which +* allows recursive macros to be avoided. The "ascii 31" key is used by +* some of the "main-xxx.c" files to introduce macro trigger sequences. +* +* Hack -- we use "ascii 29" (ctrl-right-bracket) as a special "magic" key, +* which can be used to give a variety of "sub-commands" which can be used +* any time. These sub-commands could include commands to take a picture of +* the current screen, to start/stop recording a macro action, etc. +* +* If "angband_term[0]" is not active, we will make it active during this +* function, so that the various "main-xxx.c" files can assume that input +* is only requested (via "Term_inkey()") when "angband_term[0]" is active. +* +* Mega-Hack -- This function is used as the entry point for clearing the +* "signal_count" variable, and of the "character_saved" variable. +* +* Hack -- Note the use of "inkey_next" to allow "keymaps" to be processed. +* +* Mega-Hack -- Note the use of "inkey_hack" to allow the "Borg" to steal +* control of the keyboard from the user. +*/ + +#####GDescription +Get a keypress from the user. + +---------------------------------------------------------------------- + +#####R=== cmsg_print === + +#####GDeclaration + void cmsg_print(byte color, cptr msg); + +#####GFile + util.c + +#####GComment +/* +* Output a message to the top line of the screen. +* +* Break long messages into multiple pieces (40-72 chars). +* +* Allow multiple short messages to "share" the top line. +* +* Prompt the user to make sure he has a chance to read them. +* +* These messages are memorised for later reference (see above). +* +* We could do "Term_fresh()" to provide "flicker" if needed. +* +* The global "msg_flag" variable can be cleared to tell us to +* "erase" any "pending" messages still on the screen. +* +* XXX XXX XXX Note that we must be very careful about using the +* "msg_print()" functions without explicitly calling the special +* "msg_print(NULL)" function, since this may result in the loss +* of information if the screen is cleared, or if anything is +* displayed on the top line. +* +* XXX XXX XXX Note that "msg_print(NULL)" will clear the top line +* even if no messages are pending. This is probably a hack. +*/ + +#####GDescription +In color "color", output message "msg" to the top line of the screen. +If the message is blank or has more than 1000 characters, nothing is +printed. Long messages are split after the 40th character and before +the 72nd character. + +#####GParameters +> "color" is the color of the message. + *****fields.txt*0[colors] +> "msg" is the message. + +---------------------------------------------------------------------- + +#####R=== msg_print === + +#####GDeclaration + void msg_print(cptr msg); + +#####GFile + util.c + +#####GComment +/* Hack -- for compatibility and easy sake */ + +#####GDescription +Print message "msg" in white (see cmsg_print() above). + +#####GParameters +> "msg" is the message. + +---------------------------------------------------------------------- + +#####R=== screen_save === + +#####GDeclaration + void screen_save(void); + +#####GFile + util.c + +#####GComment +/* + * Save the screen, and increase the "icky" depth. + * + * This function must match exactly one call to "screen_load()". + */ + +#####GDescription +Save a screen shot. + +---------------------------------------------------------------------- + +#####R=== screen_load === + +#####GDeclaration + void screen_load(void); + +#####GFile + util.c + +#####GComment +/* + * Load the screen, and decrease the "icky" depth. + * + * This function must match exactly one call to "screen_save()". + */ + +#####GDescription +Load a previously saved screen shot. + +---------------------------------------------------------------------- + +#####R=== c_put_str === + +#####GDeclaration + void c_put_str(byte attr, cptr str, int row, int col); + +#####GFile + util.c + +#####GComment +/* +* Display a string on the screen using an attribute. +* +* At the given location, using the given attribute, if allowed, +* add the given string. Do not clear the line. +*/ + +#####GDescription +Put string "str" at row "row" and column "col" with attribute "attr". + +#####GParameters +> "attr" is the color of the message. + *****fields.txt*0[colors] +> "msg" is the message. +> "row" is the row the message is to be printed at. +> "col" is the column the message is to be printed at. + +---------------------------------------------------------------------- + +#####R=== c_prt === + +#####GDeclaration + void c_prt(byte attr, cptr str, int row, int col); + +#####GFile + util.c + +#####GComment +/* +* Display a string on the screen using an attribute, and clear +* to the end of the line. +*/ + +#####GDescription +Clear row "row" from column "col". Put string "str" at "row", "col" +with attribute "attr". + +#####GParameters +> "attr" is the color of the message. + *****fields.txt*0[colors] +> "msg" is the message. +> "row" is the row the message is to be printed at. +> "col" is the column the message is to be printed at. + +---------------------------------------------------------------------- + +#####R=== clear_from === + +#####GDeclaration + void clear_from(int row); + +#####GFile + util.c + +#####GComment +/* +* Clear part of the screen +*/ + +#####GDescription +Clear the screen from row "row" onwards. + +#####GParameters +> "row" is the first row of the screen to be cleared. + +---------------------------------------------------------------------- + +#####R=== askfor_aux === + +#####GDeclaration + bool askfor_aux(char *buf, int len); + +#####GFile + util.c + +#####GComment +/* +* Get some input at the cursor location. +* Assume the buffer is initialized to a default string. +* Note that this string is often "empty" (see below). +* The default buffer is displayed in yellow until cleared. +* Pressing RETURN right away accepts the default entry. +* Normal chars clear the default and append the char. +* Backspace clears the default or deletes the final char. +* ESCAPE clears the buffer and the window and returns FALSE. +* RETURN accepts the current buffer contents and returns TRUE. +*/ + +#####GDescription +Get string "buf" from the screen. "buf" is to be no more than "len" +bytes. The string starts at the current cursor position. The length +can not exceed the number of bytes from the cursor to the end of the +line. Accept user input until the escape or return key is pressed. + +#####GParameters +> "buf" is the string returned from the screen. +> "len" is the length of the string. If it is <1 it is forced to 1. + +---------------------------------------------------------------------- + +#####R=== get_string === + +#####GDeclaration + bool get_string(cptr prompt, char *buf, int len); + +#####GFile + util.c + +#####GComment +/* +* Get a string from the user +* +* The "prompt" should take the form "Prompt: " +* +* Note that the initial contents of the string is used as +* the default response, so be sure to "clear" it if needed. +* +* We clear the input, and return FALSE, on "ESCAPE". +*/ + +#####GDescription +Print prompt "prompt" at the top-left corner of the screen and return +response "buf" which will have a maximum length "length". If ESCAPE +is entered, the function returns FALSE, otherwise it returns TRUE. + +#####GParameters +> "prompt" is the prompt for input. +> "buf" is the returned response. +> "len" is the maximum length of the string. + +---------------------------------------------------------------------- + +#####R=== get_check === + +#####GDeclaration + bool get_check(cptr prompt); + +#####GFile + util.c + +#####GComment +/* +* Verify something with the user +* +* The "prompt" should take the form "Query? " +* +* Note that "[y/n]" is appended to the prompt. +*/ + +#####GDescription +Ask the user question "prompt" which requires a yes/no answer. The +prompt appears in the top-left corner of the screen. A response of +'Y' (either case) returns TRUE. A response of 'N' (either case) or +ESCAPE returns FALSE. + +#####GParameters +> "prompt" is the question asked. It has a maximum length of 70 + characters. + +---------------------------------------------------------------------- + +#####R=== get_com_lua === + +#####GDeclaration + bool get_com_lua @ get_com(cptr promtp, int *com); + +#####GFile + util.c + +#####GComment +/* +* Prompts for a keypress +* +* The "prompt" should take the form "Command: " +* +* Returns TRUE unless the character is "Escape" +*/ + +#####GDescription +Ask the user for command "prompt" and return the key press "com". A +response of ESCAPE returns FALSE. All other responses return TRUE. + +#####GParameters +> "prompt" is the prompt for the key press. +> "com" is the returned key press. + +---------------------------------------------------------------------- + +#####R=== get_quantity === + +#####GDeclaration + s32b get_quantity(cptr prompt, s32b max); + +#####GFile + util.c + +#####GComment +/* +* Request a "quantity" from the user +* +* Hack -- allow "command_arg" to specify a quantity +*/ + +#####GDescription +Ask the user for quantity "prompt" of maximum value "max" and return +a quantity. If the user quantity is higher than the maximum then the +maximum is returned. If the response is a letter then the maximum is +returned. If the user quantity is negative then zero is returned. + +#####GParameters +> "prompt" is the prompt for a quantity. +> "max" is the maximum value allowed. + +---------------------------------------------------------------------- + +#####R=== test_monster_name === + +#####GDeclaration + int test_monster_name(cptr name); + +#####GFile + util.c + +#####GComment +/* + * Given monster name as string, return the index in r_info array. Name + * must exactly match (look out for commas and the like!), or else 0 is + * returned. Case doesn't matter. -GSN- + */ + +#####GDescription +Return the monster index for monster with name "name". If no match is +found then zero is returned. + +#####GParameters +> "name" is the monster name. + +---------------------------------------------------------------------- + +#####R=== test_item_name === + +#####GDeclaration + int test_item_name(cptr name); + +#####GFile + util.c + +#####GComment +/* + * Given item name as string, return the index in k_info array. Name + * must exactly match (look out for commas and the like!), or else 0 is + * returned. Case doesn't matter. -DG- + */ + +#####GDescription +Return the item index for item with name "name". If no match is found +then zero is returned. + +#####GParameters +> "name" is the item name. + +---------------------------------------------------------------------- + +#####R=== luck === + +#####GDeclaration + int luck(int min, int max); + +#####GFile + xtra1.c + +#####GComment +/* + * Return a luck number between a certain range + */ + +#####GDescription +Return a number for luck between minimum "min" and maximum "max". The +value begins with the player's current luck. The value is forced to +be between -30 and +30. 30 is added to give a value between 0 and 60. +The value is multiplied by the range (maximum - minimum) and divided +by 60. The value is increased by the minimum. The value is returned. + +For example, if the player's current luck is 15, the minimum is -10, +and the maximum is 10 (range 20), then the value returned is +(45 * 20) / 60 which is 900 / 60 which is 15 + the minimum -10 gives +a returned value of 5. + +#####GParameters +> "min" is the minimum luck. +> "max" is the maximum luck. Beware: this should be greater than the + minimum but it is not checked! + +---------------------------------------------------------------------- + +#####R=== get_player_race_name === + +#####GDeclaration + cptr get_player_race_name(int pr, int ps); + +#####GFile + util.c + +#####GComment +(none) + +#####GDescription +Return the name for player race "pr" and player sub-race "ps". + +#####GParameters +> "pr" is the index for player race. +> "ps" is the index for player sub-race. + +---------------------------------------------------------------------- + +#####R=== quit === + +#####GDeclaration + void quit(cptr str); + +#####GFile + z-util.c + +#####GComment +/* + * Exit (ala "exit()"). If 'str' is NULL, do "exit(0)". + * If 'str' begins with "+" or "-", do "exit(atoi(str))". + * Otherwise, plog() 'str' and exit with an error code of -1. + * But always use 'quit_aux', if set, before anything else. + */ + +#####GDescription +Quit the game. If "str" is a string then write the string to the +error file or screen. If "str" is a number then exit with the +number as the exit code. + +#####GParameters +> "str" is an error message or exit code. + +---------------------------------------------------------------------- + +#####R=== dump_hooks === + +#####GDeclaration + void dump_hooks(); + +#####GFile + plots.c + +#####GComment +(none) + +#####GDescription +Print the name and type (C or Lua) of hooks in the hook list. + +---------------------------------------------------------------------- + +#####R=== add_hook_script === + +#####GDeclaration + void add_hook_script(int h_idx, char *script, cptr name); + +#####GFile + plots.c + +#####GComment +(none) + +#####GDescription +To hook list with index "h_idx", add a script with script file +"script" and name "name" as a Lua hook if a hook with that name +does not already exist. + +#####GParameters +> "h_idx" is the index of the hook list in the array of hook lists. +> "script" is the name of the script file. +> "name" is the name of the hook to be added. + +---------------------------------------------------------------------- + +#####R=== del_hook_name === + +#####GDeclaration + void del_hook_name(int h_idx, cptr name); + +#####GFile + plots.c + +#####GComment +(none) + +#####GDescription +Search hook list with index "h_idx" and remove the hook with name +"name". + +#####GParameters +> "h_idx" is the index of the hook list in the array of hook lists. +> "name" is the name of the hook to be removed. + +---------------------------------------------------------------------- + +#####R=== pern_dofile === + +#####GDeclaration + bool pern_dofile(char *file); + +#####GFile + script.c + +#####GComment +(none) + +#####GDescription +Parse the Lua script file "file". + +#####GParameters +> "file" is the Lua script file to be parsed. + +---------------------------------------------------------------------- + +#####R=== intMod === + +#####GDeclaration + s32b intMod(s32b a, s32b b); + +#####GFile + script.c + +#####GComment +(none) + +#####GDescription +Return the result of operation "a" mod "b" (a % b). + +#####GParameters +> "a" is a number. +> "b" is a number. + +---------------------------------------------------------------------- + +#####R=== intAnd === + +#####GDeclaration + s32b intAnd(s32b a, s32b b); + +#####GFile + script.c + +#####GComment +(none) + +#####GDescription +Return the result of bitwise operation "a" AND "b" (a & b). + +#####GParameters +> "a" is a number. +> "b" is a number. + +---------------------------------------------------------------------- + +#####R=== intOr === + +#####GDeclaration + s32b intOr(s32b a, s32b b); + +#####GFile + script.c + +#####GComment +(none) + +#####GDescription +Return the result of bitwise operation "a" OR "b" (a | b). + +#####GParameters +> "a" is a number. +> "b" is a number. + +---------------------------------------------------------------------- + +#####R=== intXor === + +#####GDeclaration + s32b intXor(s32b a, s32b b); + +#####GFile + script.c + +#####GComment +(none) + +#####GDescription +Return the result of bitwise operation "a" XOR "b" (a ^ b). + +#####GParameters +> "a" is a number. +> "b" is a number. + +---------------------------------------------------------------------- + +#####R=== intShiftl === + +#####GDeclaration + s32b intShiftl(s32b a, s32b b); + +#####GFile + script.c + +#####GComment +(none) + +#####GDescription +Return the result of bitwise operation "a" << "b". + +#####GParameters +> "a" is a number. +> "b" is a number. + +---------------------------------------------------------------------- + +#####R=== intShiftr === + +#####GDeclaration + s32b intShiftr(s32b a, s32b b); + +#####GFile + script.c + +#####GComment +(none) + +#####GDescription +Return the result of bitwise operation "a" >> "b". + +#####GParameters +> "a" is a number. +> "b" is a number. + +---------------------------------------------------------------------- + +#####R=== intBitNot === + +#####GDeclaration + s32b intBitNot(s32b b); + +#####GFile + script.c + +#####GComment +(none) + +#####GDescription +Return the result of bitwise operation NOT "b" (~ b). + +#####GParameters +> "b" is a number. + +---------------------------------------------------------------------- + +#####R=== register_savefile === + +#####GDeclaration + void register_savefile(int num); + +#####GFile + loadsave.c + +#####GComment +/* + * Add num slots to the savefile + */ + +#####GDescription +Add "num" slots to the save file. + +#####GParameters +> "num" is the number of slots to add to the savefile. If num is <0 + then "num" is forced to zero. + +---------------------------------------------------------------------- + +#####R=== save_number_key === + +#####GDeclaration + void save_number_key(char *key, s32b val); + +#####GFile + util.c + +#####GComment +(none) + +#####GDescription +Save the length of key "key", the key itself, and the value "val" as +bytes in the savefile. + +#####GParameters +> "key" is the key string for the value. +> "val" is the value to be saved. + +---------------------------------------------------------------------- + + + +Back to the *****lua.hlp*0[lua help index] . + + + [[[[[gThis file by Chris Hadgis] + diff --git a/lib/mods/theme/help/luckspoi.txt b/lib/mods/theme/help/luckspoi.txt new file mode 100644 index 00000000..4b4007c2 --- /dev/null +++ b/lib/mods/theme/help/luckspoi.txt @@ -0,0 +1,129 @@ +|||||oy +~~~~~01|Luck (spoiler) +~~~~~02|Spoilers|Luck +#####RLuck + +"You've got to ask yourself one question: do I feel lucky? Well do ya +punk?" + --Clint Eastwood (Dirty Harry) + +#####G1. Starting luck +Most races start with no luck points. Those that start with luck are listed +below from most luck to least luck. + +Hobbit (+5); +Maia (+4); +Gnome, Dunadan (+2); +Beorning (+1); +Half-Ogre, Dark Elf, Ent (-2); +Orc (-3); +Troll (-4); +Petty Dwarf, Yeek (-5). + +Most subraces start with no luck points. Those that start with luck are listed +below from most luck to least luck. + +Barbarian (+1); +Spectre, Skeleton (-3); +Zombie (-4). + +So, a Hobbit starts with 5 luck points, a Beorning Barbarian starts with 2 luck +points, while a Yeek Zombie starts with -9 luck points. + +#####G2. Descriptions +Drinking a potion of self-knowledge will tell you how lucky or unlucky your +character is. + +DESCRIPTION VALUE +incredibly unlucky less than -27 +extremely unlucky less than -18 +very unlucky less than -9 +unlucky less than 0 +normal luck 0 +lucky more than 0 +very lucky more than 9 +extremely lucky more than 18 +incredibly lucky more than 27 + +Luck < -30 is treated as -30 and luck > 30 is treated as +30. + +#####G3. Items affecting luck +Elven cloaks give a bonus to luck. + +All Morgul items have -10 luck. +Weapons of Telchar give a bonus to luck. +Weapons of the Glamhoth are unlucky. +Lucky amulets give a bonus to luck. +Unlucky amulets are, well, unlucky. + +Artifacts can affect your luck. Beware: not all artifacts give you good luck. +Listed below are the artifacts which affect your luck. + +The Phial of Galadriel (+4) +The Arkenstone of Thrain (+3) +The Ring of Power 'Narya' (+1) +The Ring of Power 'Nenya' (+2) +The Ring of Power 'Vilya' (+3) +The Metal Cap of Thengel (+3) +The Shadow Cloak of Luthien (+2) +The Set of Cesti of Fingolfin (+4) +The Broken Dagger 'Angrist' (+5) +The Long Sword 'Anduril' (+4) +The Long Sword of Dernhelm (+5) +The Long Bow of Bard (+2) +The Mage Staff of Manwe (+12) +The Golden Harp of Thorin (+2) +The Harp of Maglor (+3) +The Drum of the Sky (+2) +The Harp of Daeron (+1) +The Long Sword of Tulkas (+10) +The Robe of Great Luck (+60) +The Heavy Crossbow of Orome (+5) +The Iron Helm of Knowledge (-6) +The Shield of Deflection of Gil-galad (+5) +The Set of Gauntlets of Eol (+3) +The Demonblade of Gothmog (-20) +The Elven Cloak of Peregrin Took (+3) +The Ring 'Fuin' (+15) +The Blue Stone 'Coimir' (+2) +The Elven Cloak of Mellyrn (+4) +The Set of Cesti 'Skycleaver' (+1) +The Robe of Belegaer (+5) +The Harp of Tom Bombadil (+4) +The Horn 'Valaroma' (+4) +The Sceptre of Numenor (-3) +The Rod of Annuminas (+4) +The Lucerne Hammer of the Eruchin (+10) +The Trident of Ulmo (+10) +The Broad Axe of Aule (+10) +The Rapier of Vaire (+10) +The Long Bow of Irmo (+5) +The Sling of Nessa (+5) +The Boomerang of Varda (+5) +The Ring of Power of the Blacklocks (+3) + +#####G4. What does it affect. +It affects your chance to-hit in ranged combat and melee combat. + +It affects your chance of critical hits in ranged combat and melee combat. + +It affects your chance of being missed by a monster attack. This effectively +changes armour class by -13 (incredibly unlucky) to +13 (incredibly lucky). + +It affects the rarity of special objects, artifacts, and ego items. + +It affects the number of wishes on a staff of wishing. + +It affects the base level for applying magic to an item. + +It affects the chance of an item being good or great. + +It affects the chance of creating a special object. + +It prevents the death fate if you are lucky. + +It affects the number of skill points you receive when quaffing the Potion of +Learning. + + + Written for ToME 2.0 by Chris Hadgis diff --git a/lib/mods/theme/help/m_air.txt b/lib/mods/theme/help/m_air.txt new file mode 100644 index 00000000..ee9fa8d0 --- /dev/null +++ b/lib/mods/theme/help/m_air.txt @@ -0,0 +1,42 @@ +|||||oy +~~~~~01|Magic|Air School +~~~~~02|Air Magic +~~~~~03|Skills|Air - Spell Info +#####R === ToME Magic - Air School === + +The air school of magic contains spells where the element of air is used +to create the final spell effect. There are rumours of a "Tome of the Blowing +Wind" which contains all the air school spells within its bindings. + +Worshipping the God Manwe Sulimo also gives the ability to cast spells from +the air school at a level of 2/3 of your prayer level. E.g. if the skill +"Spirituality: Prayer" is at level 12, you can cast up to level 8 air school +spells. + +#####BAir Spells +There are six spells available for the air school. These spells are: +1. [[[[[BNoxious Cloud] (school level 3) + Creates a cloud of poison. + The cloud will persist for some turns, damaging all monsters passing by. + At spell level 30 it turns into a thick gas attacking all living beings. +2. [[[[[BPoison Blood] (school level 12) + Grants resist poison. + At spell level 15 it provides poison branding to the wielded weapon. +3. [[[[[BInvisibility] (school level 16) + Grants invisibility. +4. [[[[[BSterilize] (school level 20) + Prevents explosive breeding for a while. +5. [[[[[BWings of Winds] (dual school level 22) + Grants the power of levitation. + At spell level 16 it grants the power of controlled flight. +#####v Your Air and Conveyance skills must have reached a combined average level +#####v of 22 in order to cast this spell. +6. [[[[[BThunderstorm] (dual school level 25) + Charges up the air around you with electricity. + Each turn it will throw a bolt of thunder at a random monster in sight. + This thunder does 3 types of damage: + one third of lightning + one third of sound + and one third of light. +#####v Your Air and Nature skills must have reached a combined average level +#####v of 25 in order to cast this spell. diff --git a/lib/mods/theme/help/m_convey.txt b/lib/mods/theme/help/m_convey.txt new file mode 100644 index 00000000..91ed8556 --- /dev/null +++ b/lib/mods/theme/help/m_convey.txt @@ -0,0 +1,71 @@ +|||||oy +~~~~~01|Magic|Conveyance School +~~~~~02|Conveyance Magic +~~~~~03|Skills|Conveyance - Spell Info +#####R === ToME Magic - Conveyance School === + +The conveyance school of magic contains spells where the forces of space are +manipulated by the spell. There are rumours of a "Tome of of Translocation" +which contains all the conveyance school spells within its bindings. + +Worshipping the God Manwe Sulimo also gives the ability to cast spells from +the conveyance school at a level of 1/2 of your prayer level. E.g. if the +skill "Spirituality: Prayer" is at level 10, you can cast up to level 5 +conveyance school spells. + +#####sConveyance Spells +There are six spells available for the conveyance school. These Spells are: +1. [[[[[sPhase Door] (school level 1) + Teleports you on a small scale range. + At spell level 30 it creates void jumpgates. +2. [[[[[sDisarm] (school level 3) + Destroys doors and disarms traps in adjacent tiles. + At spell level 10 it unlocks doors and disarms traps. +3. [[[[[sTeleportation] (school level 10) + Teleports you around the level. + The casting time decreases with level. +4. [[[[[sTeleport Away] (school level 23) + Teleports a line of monsters away. + At spell level 10 it turns into a ball. + At spell level 20 it teleports all monsters in sight. +5. [[[[[sRecall] (school level 30) + Cast on yourself, it will recall you to the surface/dungeon. + Cast at a monster, it will make you swap positions with the monster. + Cast at an object, it will fetch the object to you (note that you must have + an empty space under your feet for the object to fall onto). +6. [[[[[sProbability Travel] (school level 35) + Renders you unstable. When you hit a wall you travel through it and + instantly appear on the other side of it. You can also float up and down + at will. + +#####GAir spells that can be cast with Conveyance skill + +1. [[[[[BWings of Winds] (dual school level 22) + Grants the power of levitation. + At spell level 16 it grants the power of controlled flight. +#####v Your Air and Conveyance skills must have reached a combined average level +#####v of 22 in order to cast this spell. + +#####GTemporal spells that can be cast with Conveyance skill + +1. [[[[[sBanishment] (dual school level 30) + Disrupts the space/time continuum in your area and teleports all monsters + away. + At spell level 15 it also may lock them in a time bubble for some turns. +#####v Your Temporal and Conveyance skills must have reached a combined average level +#####v of 30 in order to cast this spell. + +#####GMeta spells that can be cast with Conveyance skill + +1. [[[[[sTracker] (dual school level 30) + Tracks down the last teleportation that happened on the level and teleports + you to it. +#####v Your Meta and Conveyance skills must have reached a combined average level +#####v of 30 in order to cast this spell. + +#####GUdun spells that can be cast with Conveyance skill + +1. [[[[[DWraithform] (dual school level 30) + Turns you temporarily into an immaterial being. +#####v Your Udun and Conveyance skills must have reached a combined average level +#####v of 30 in order to cast this spell. diff --git a/lib/mods/theme/help/m_demono.txt b/lib/mods/theme/help/m_demono.txt new file mode 100644 index 00000000..cb32d360 --- /dev/null +++ b/lib/mods/theme/help/m_demono.txt @@ -0,0 +1,44 @@ +|||||oy +~~~~~01|Magic|Demonology School +~~~~~02|Demonology Magic +~~~~~03|Skills|Demonology - Spell Info +#####R === ToME Magic - Demonology === + +Available only to Demonologists, or those sufficiently corrupted with +demon-like powers, this school contains spells where demonic energies +are used to create mainly devastating effects. + +#####oDemonic equipment +Unlike other magic schools, the spells of a Demonologist are not written +in spell books, but are contained within items of demonic origin known as +Demonblades, Demonshields, and Demonhorns (helms), which when wielded allow +the Demonologist to cast spells; each piece of equipment holds three spells. + +#####oDemonblade spells +1. [[[[[oDemon Blade] (school level 1) + Imbues your blade with fire to deal more damage. + At level 30 it deals hell fire damage. + At level 45 it spreads over a 1 radius zone around your target. +2. [[[[[oDemon Madness] (school level 10) + Fire 2 balls in opposite directions of randomly chaos, confusion or charm. +3. [[[[[oDemon Field] (school level 20) + Fires a lingering cloud of deadly nexus over a radius of 7. + +#####oDemonshield spells +1. [[[[[oDoom Shield] (school level 1) + Raises a mirror of pain around you, doing very high damage to your foes + that dare hit you, but greatly reduces your armour class. +2. [[[[[oDemon Cloak] (school level 20) + Raises a mirror that can reflect bolts and arrows for a time. +3. [[[[[oUnholy Word] (school level 25) + Kills a pet to heal you. There is a chance that the pet won't die but will + turn against you. This chance will decrease with higher spell levels. + +#####oDemonhorn spells +1. [[[[[oSummon Demon] (school level 5) + Summons a leveled demon to your side. + At level 35 it summons a high demon. +2. [[[[[oDischarge Minion] (school level 10) + The targeted pet will explode in a burst of gravity. +3. [[[[[oControl Demon] (school level 25) + Attempts to control a demon. diff --git a/lib/mods/theme/help/m_divin.txt b/lib/mods/theme/help/m_divin.txt new file mode 100644 index 00000000..df92c11b --- /dev/null +++ b/lib/mods/theme/help/m_divin.txt @@ -0,0 +1,38 @@ +|||||oy +~~~~~01|Magic|Divination School +~~~~~02|Divination Magic +~~~~~03|Skills|Divination - Spell Info +#####R === ToME Magic - Divination School === + +The divination school of magic contains spells where magic is used to +psychically gain information about things. There are rumours of a "Tome of +Knowledge" which contains all the divination school spells within its bindings. + +Worshipping Eru Iluvatar or Mandos also gives the ability to cast spells from +the divination school at a level of 2/3 and 1/3, respectively, of your prayer +level. E.g. if the skill "Spirituality: Prayer" is at level 12, a worshipper +of Eru can cast up to level 8 divination school spells, whereas a worshipper +of Mandos can cast up to level 4 divination school spells. + +#####sDivination Spells +There are six spells available for the divination school. These Spells are: +1. [[[[[sSense Monsters] (school level 1) + Detects all monsters near you. + At spell level 30 it allows you to sense monster minds for a while. +2. [[[[[sSense Hidden] (school level 5) + Detects the traps in a certain radius around you. + At spell level 15 it allows you to sense invisible monsters for a while. +3. [[[[[sIdentify] (school level 8) + Asks for an object and identifies it. + At spell level 17 it identifies all objects in the inventory. + At spell level 27 it identifies all objects in the inventory and in a + radius on the floor, as well as probing monsters in that radius. +4. [[[[[sReveal Ways] (school level 9) + Detects the doors/stairs/ways in a certain radius around you. +5. [[[[[sVision] (school level 15) + Detects the layout of the surrounding area. + At spell level 25 it maps and lights the whole level. +6. [[[[[sGreater Identify] (school level 35) + Asks for an object and fully identifies it, providing the full list of + powers (as with a scroll of *Identify*). + Cast at yourself, it will reveal your powers (Self Knowledge). diff --git a/lib/mods/theme/help/m_earth.txt b/lib/mods/theme/help/m_earth.txt new file mode 100644 index 00000000..2f2bd9c2 --- /dev/null +++ b/lib/mods/theme/help/m_earth.txt @@ -0,0 +1,35 @@ +|||||oy +~~~~~01|Magic|Earth School +~~~~~02|Earth Magic +~~~~~03|Skills|Earth - Spell Info +#####R === ToME Magic - Earth School === + +The earth school of magic contains spells where the element of earth is used +to create the final spell effect. There are rumours of a "Tome of the +Impenetrable Earth" which contains all the earth school spells within its +bindings. + +Worshipping Tulkas, Yavanna Kementari or Aule also gives the ability to cast +spells from the earth school, at a level of 4/5, 1/2, or 1/3, respectively, +of your prayer level. E.g. if the skill "Spirituality: Prayer" is at level +10, a worshipper of Tulkas can cast up to level 8 earth school spells, +whereas a worshipper of Yavanna can cast up to level 5 earth school spells +and a worshipper of Aule can cast up to level 3 earth school spells. + +#####uEarth Spells +There are five spells available for the earth school. These Spells are: +1. [[[[[uStone Skin] (school level 1) + Creates a shield of earth around you to protect you. + At spell level 25 it starts dealing damage to attackers. +2. [[[[[uDig] (school level 12) + Digs a hole in a wall much faster than any shovels. +3. [[[[[uStone Prison] (school level 25) + Creates a prison of walls around you. + At spell level 10 it allows you to target a monster. +4. [[[[[uShake] (school level 27) + Creates a localised earthquake. + At spell level 10 it can be targeted at any location. +5. [[[[[uStrike] (school level 30) + Creates a micro-ball of force that will push monsters backwards. + If the monster is caught near a wall, it'll be crushed against it. + At spell level 12 it turns into a ball of radius 1. diff --git a/lib/mods/theme/help/m_fire.txt b/lib/mods/theme/help/m_fire.txt new file mode 100644 index 00000000..826a1d9a --- /dev/null +++ b/lib/mods/theme/help/m_fire.txt @@ -0,0 +1,53 @@ +|||||oy +~~~~~01|Magic|Fire School +~~~~~02|Fire Magic +~~~~~03|Skills|Fire - Spell Info +#####R === ToME Magic - Fire School === + +The fire school of magic contains spells where the element of fire is used +to create the final spell effect. There are rumours of a "Tome of the Eternal +Flame" which contains all the fire school spells within its bindings. + +Worshipping Aule also gives the ability to cast spells from the fire school +at a level of 3/5 of your prayer level. E.g. if the skill "Spirituality: +Prayer" is at level 15, you can cast up to level 9 fire school spells. + +#####RFire Spells +There are five spells available for the fire school. These spells are: +1. [[[[[RGlobe of Light] (school level 1) + Creates a globe of pure light. + At spell level 3 it starts damaging monsters. + At spell level 15 it starts creating a more powerful kind of light. +2. [[[[[RFire Golem] (dual school level 7) + Creates a fiery golem and controls it. + During the control the available keylist is: + Movement keys: move the golem (depending on its speed it can move more + than one square). + , : pickup all items on the floor + d : drop all carried items + i : list all carried items + m : end the possession/use golem powers + Most of the other keys are disabled; you cannot interact with your + real body while controlling the golem. + But to cast the spell you will need a lantern or a wooden torch to create + the golem. +#####v Your Fire and Mind skills must have reached a combined average level +#####v of 7 in order to cast this spell. +3. [[[[[RFireflash] (school level 10) + Conjures a ball of fire to burn your foes to ashes. + At spell level 20 it turns into a ball of holy fire. +4. [[[[[RFirewall] (school level 15) + Creates a fiery wall to incinerate monsters stupid enough to attack you. + At spell level 6 it turns into a wall of hell fire. +5. [[[[[RFiery Shield] (school level 20) + Creates a shield of fierce flames around you. + At spell level 8 it turns into a greater kind of flame that cannot be + resisted by your foes. + + +#####GUdun spells that can be cast with Fire skill + +1. [[[[[DFlame of Udun] (dual school level 35) + Turns you temporarily into a powerful Balrog. +#####v Your Fire and Udun skills must have reached a combined average level +#####v of 35 in order to cast this spell. diff --git a/lib/mods/theme/help/m_geoman.txt b/lib/mods/theme/help/m_geoman.txt new file mode 100644 index 00000000..97c1ac1a --- /dev/null +++ b/lib/mods/theme/help/m_geoman.txt @@ -0,0 +1,75 @@ +|||||oy +~~~~~01|Magic|Geomancy +~~~~~02|Geomancer|Geomancy spells +~~~~~03|Skills|Geomancy - Spell Info +#####R === ToME Magic - Geomancy === +Geomancy harnesses the power of nature to awesome effect. Therefore neither +books nor light are necessary, and as the geomancers's skill increases, so do +his powers over the elements of nature. + +Because Geomancy relies so heavily on the environment, you will need +sufficient knowledge of the elemental skills (Earth, Air, Fire and Water) in +order to cast some of the spells, and the exact effects of a spell often +depend upon your levels in the elemental skills and your current surroundings. + +The powers are accessed using the 'm' key and then selecting 'Use Geomancy'; +they are cast with spell points, like normal spells, which can be increased +as usual through the *****skills.txt*21[Magic] skill. + +1. [[[[[RCall] [[[[[GThe] [[[[[BElements] (Level 1) Cost:2 + Randomly creates various elements around you. + The chance for each type of element is controlled by your level in the + corresponding skill. + At level 17 it can be targeted. + +2. [[[[[UChannel] [[[[[GElements] (Level 3) Cost:3 + Draws on the caster's immediate environs to form an attack or other effect. + Grass/Flower heals. + Water creates water bolt attacks. + Ice creates ice bolt attacks. + Sand creates a wall of burning sand around you, but the wall is thick and + blinds you. + Lava creates fire bolt attacks. + Deep lava creates fire ball attacks. + Chasm creates darkness bolt attacks. + At Earth level 18, darkness becomes nether. + At Water level 8, water attacks become beams with a striking effect. + At Water level 12, ice attacks become balls of ice shards. + At Water level 18, water attacks push monsters back. + At Fire level 15, fire becomes hellfire. + +3. [[[[[RElemental] [[[[[BWave] (Level 15) Cost:15 + Draws on an adjacent special square to project a slow-moving wave of that + element in that direction. + Abyss squares cannot be channeled into a wave. + +4. [[[[[UElemental] [[[[[RMinion] (Level 20) Cost:40 + Summons a minion from a nearby element. + Walls can summon Earth elmentals, Xorns and Xarens. + Dark Pits can summon Air elementals, Ancient blue dragons, Great Storm Wyrms + and Sky Drakes. + Sandwalls and lava can summon Fire elementals and Ancient red dragons. + Icewalls and water can summon Water elementals, Water trolls and Water + demons. + +5. [[[[[GVaporize] (Level 4) Cost:3 + Draws upon your immediate environs to form a cloud of damaging vapors. +#####v You must have reached at least level 4 in the Air skill to cast this +#####v spell. + +6. [[[[[UGeolysis] (Level 7) Cost:15 + Burrows deeply and slightly at random into a wall, leaving behind tailings + of various different sorts of walls in the passage. +#####v You must have reached at least level 7 in the Earth skill to cast this +#####v spell. + +7. [[[[[BDripping Tread] (Level 10) Cost:15 + Causes you to leave random elemental forms behind as you walk. +#####v You must have reached at least level 10 in the Water skill to cast this +#####v spell. + +8. [[[[[UGrow Barrier] (Level 12) Cost:30 + Creates impassable terrain (walls, trees, etc.) around you. + At air level 20 it can be projected around another area. +#####v You must have reached at least level 12 in the Earth skill to cast this +#####v spell. diff --git a/lib/mods/theme/help/m_mana.txt b/lib/mods/theme/help/m_mana.txt new file mode 100644 index 00000000..23d8e680 --- /dev/null +++ b/lib/mods/theme/help/m_mana.txt @@ -0,0 +1,40 @@ +|||||oy +~~~~~01|Magic|Mana School +~~~~~02|Mana Magic +~~~~~03|Skills|Mana - Spell Info +#####R === ToME Magic - Mana School === + +The mana school of magic contains spells where the raw force of magic is used +to create the final spell effect. There are rumours of a "Tome of Magical +Energy" which contains all the mana school spells within its bindings. + +Worshipping Eru Iluvatar or Varda Elentari also gives the ability to cast spells +from the mana school at a level of 1/2 or 1/4, respectively, of your prayer level. +E.g. if the skill "Spirituality: Prayer" is at level 10, Eru worshippers can cast +up to level 5 mana school spells whereas Varda worshippers can cast up to level 3 +mana school spells. + +#####sMana Spells +There are four spells available for the mana school. These spells are: +1. [[[[[sManathrust] (school level 1) + Conjures up mana into a powerful bolt. + The damage is irresistible and will increase with spell level. +2. [[[[[sRemove Curses] (school level 10) + Removes curses of worn objects. + At spell level 20, removes heavy curses. +3. [[[[[sElemental Shield] (school level 20) + Provides resistance to the four basic elements. +4. [[[[[sDisruption Shield] (school level 45) + Uses mana instead of hitpoints to take damage. + At spell level 5 switches to Globe of Invulnerability. + The spell breaks as soon as a melee, shooting, throwing or magical skill + action is attempted, and lasts only a short time otherwise. + + +#####GUdun spells that can be cast with Mana skill + +1. [[[[[DDrain] (dual school level 1) + Drains the mana contained in wands, staves and rods to increase yours. +#####v Your Mana and Udun skills must have reached a combined average level +#####v of 1 in order to cast this spell. + diff --git a/lib/mods/theme/help/m_meta.txt b/lib/mods/theme/help/m_meta.txt new file mode 100644 index 00000000..7bf1471b --- /dev/null +++ b/lib/mods/theme/help/m_meta.txt @@ -0,0 +1,75 @@ +|||||oy +~~~~~01|Magic|Meta School +~~~~~02|Meta Magic +~~~~~03|Skills|Meta - Spell Info +#####R === ToME Magic - Meta School === + +The meta school of magic contains spells where the raw forces of magic are +manipulated by the spell. There are rumours of a "Tome of Meta Spells" which +contains all the meta school spells within its bindings. + +Worshipping Manwe Sulimo or Varda Elentari also gives the ability to cast +spells from the meta school at a level of 1/3 of your prayer level. E.g. if +the skill "Spirituality: Prayer" is at level 15, Manwe and Varda worshippers +alike can cast up to level 5 meta school spells. + +#####sMeta Spells +There are five spells available for the meta school. These spells are: +1. [[[[[sRecharge] (school level 5) + Taps the ambient mana to recharge an object's power (charges or mana). +2. [[[[[sDisperse Magic] (school level 15) + Dispels a lot of magic that can affect you, be it good or bad: + Spell Level 1: blindness and light. + Spell Level 5: confusion and hallucination. + Spell Level 10: speed (either bad or good) and light speed. + Spell Level 15: stunning, meditation and cuts. + Spell Level 20: heroism, super heroism, blessing, shields, fear, parasites + and mimicry. +3. [[[[[sSpellbinder] (school level 20) + Stores spells in a trigger. + When the condition is met all spells fire off at the same time. This spell + takes a long time to cast so you are advised to prepare it in a safe area. + Also it will use the mana for the Spellbinder and the mana for the selected + spells. +4. [[[[[sTracker] (dual school level 30) + Tracks down the last teleportation that happened on the level and teleports + you to it. +#####v Your Meta and Conveyance skills must have reached a combined average level +#####v of 30 in order to cast this spell. +5. [[[[[sInertia Control] (school level 37) + Changes the energy flow of a spell to be continuously recasted at a given + interval. The inertia-controlled spell reduces your maximum mana by four + times its cost. + +#####R=== List of Controllable Spells === + Armor of Fear + Banishment + Disperse Magic + Disruption Shield + Elemental Shield + Ent's Potion + Essence of Speed + Fiery Shield + Flame of Udun + Globe of Light + Grow Trees + Ice Storm + Invisibility + Phase Door + Poison Blood + Probability Travel + Recovery + Regeneration + Remove Curses + Reveal Ways + Sense Hidden + Sense Monsters + Shake + Stone Skin + Teleportation + Thunderstorm + Tidal Wave + Vapor + Vision + Wings of Winds + Wraithform diff --git a/lib/mods/theme/help/m_mimic.txt b/lib/mods/theme/help/m_mimic.txt new file mode 100644 index 00000000..79d39521 --- /dev/null +++ b/lib/mods/theme/help/m_mimic.txt @@ -0,0 +1,33 @@ +|||||oy +~~~~~01|Magic|Mimicry +~~~~~02|Mimic|Mimicry powers +~~~~~03|Skills|Mimicry - mimicry powers +#####R === ToME Magic - Mimicry === +Mimics can alter their form using special cloaks called cloaks of mimicry. +Even though this ability can give them access to increased stats, regeneration, +speed and resistances, there is always the risk of the shape-change going +horribly wrong, turning the character into an abomination for some time. +Also, you should keep in mind that any racial power or stat modifier is +overridden during the shape-shift. + +As your mimicry skill increases, your character is less likely to spoil +the transformation attempt and may even gain other powers, such as making +his colouration match his surroundings (becoming in all respects invisible) +or even stranger abilities... rumours abound about Tarka the Chameleon and +her two pairs of boots of speed. + +The powers are accessed using the 'm' key and then selecting 'Use Mimicry'; +they are cast with spell points, like normal spells, which can be increased +as usual through the *****skills.txt*21[Magic] skill. + +1. [[[[[sMimic] (Level 1) Cost:2 + Allows you to mimic the creature whose cloak you are wearing for a time. +2. [[[[[sInvisibility] (Level 10) Cost:6 + Turns you invisible for a time. +3. [[[[[sLegs Mimicry] (Level 25) Cost:20 + Gives you an additional set of legs for a time. +4. [[[[[sWall Mimicry] (Level 30) Cost:40 + Allows you to move within walls, and [[[[[Bonly] walls, for a time. +[[[[[v Be careful you don't get stuck in a wall when it runs out.] +5. [[[[[sArms Mimicry] (Level 35) Cost:100 + Gives you an additional set of arms for a time. diff --git a/lib/mods/theme/help/m_mind.txt b/lib/mods/theme/help/m_mind.txt new file mode 100644 index 00000000..b6c1196f --- /dev/null +++ b/lib/mods/theme/help/m_mind.txt @@ -0,0 +1,49 @@ +|||||oy +~~~~~01|Magic|Mind School +~~~~~02|Mind Magic +~~~~~03|Skills|Mind - Spell Info +#####R === ToME Magic - Mind School === + +The mind school of magic contains spells which alter the mind. There are +rumours of a "Tome of the Mind" which contains all the mind school spells +within its bindings. + +Worshipping the God Eru Iluvatar or the God Melkor Bauglir also gives the +ability to cast spells from the mind school at a level of 1/3 of your prayer +level. E.g. if the skill "Spirituality: Prayer" is at level 12, you can cast +up to level 4 mind school spells. + +#####sMind Spells +There are four spells available for the mind school. These spells are: +1. [[[[[sCharm] (school level 1) + Tries to manipulate the mind of a monster to make it friendly. + At spell level 15 it turns into a ball. + At spell level 35 it affects all monsters in sight. +2. [[[[[sConfuse] (school level 5) + Tries to manipulate the mind of a monster to confuse it. + At spell level 15 it turns into a ball. + At spell level 35 it affects all monsters in sight. +3. [[[[[sArmor of Fear] (school level 10) + Creates a shield of pure fear around you. Any monster attempting to hit + you must save or flee. +4. [[[[[sStun] (school level 15) + Tries to manipulate the mind of a monster to stun it. + At spell level 20 it turns into a ball. + +#####GFire spells that can be cast with Mind skill + +1. [[[[[RFire Golem] (school level 7) + Creates a fiery golem and controls it. + During the control the available keylist is: + Movement keys: move the golem (depending on its speed it can move more + than one square). + , : pickup all items on the floor + d : drop all carried items + i : list all carried items + m : end the possession/use golem powers + Most of the other keys are disabled; you cannot interact with your + real body while controlling the golem. + But to cast the spell you will need a lantern or a wooden torch to create + the golem. +#####v Your Fire and Mind skills must have reached a combined average level +#####v of 7 in order to cast this spell. diff --git a/lib/mods/theme/help/m_mindcr.txt b/lib/mods/theme/help/m_mindcr.txt new file mode 100644 index 00000000..4f420656 --- /dev/null +++ b/lib/mods/theme/help/m_mindcr.txt @@ -0,0 +1,54 @@ +|||||oy +~~~~~01|Magic|Mindcraft +~~~~~02|Mindcrafter|Mindcraft powers +~~~~~03|Skills|Mindcraft - Spell Info +#####R === ToME Magic - Mindcraft === +Mindcrafting uses the power of the mind to cast its spells. Therefore neither +books nor light are necessary, and as the mindcrafter's skill increases, so do +the powers of his mind. + +The powers are accessed using the 'm' key and then selecting 'Use Mindcraft'; +they are cast with spell points, like normal spells, which can be increased +as usual through the *****skills.txt*21[Magic] skill. + +1. [[[[[sPrecognition] (Level 1) Cost:1 + Detects monster minds around you. + At level 5 it also detects traps. + At level 15 it also allows you to see invisible monsters for a time. + At level 20 it maps out the surrounding area. + At level 25 it gives you ESP for a time. + At level 30 it also detects objects and treasure. + At level 45 it fully shows the entire level. +2. [[[[[sNeural blast] (Level 2) Cost:1 + Fires a bolt or beam, to stun and damage monsters. +3. [[[[[sMinor Displacement] (Level 3) Cost:2 + Teleports you a short distance. + At level 25 it grants the ability to create void jumpgates. +4. [[[[[sMajor Displacement] (Level 7) Cost:6 + Teleports you a good distance. + At level 30 it also banishes the monsters around you. +5. [[[[[sDomination] (Level 9) Cost:7 + Attempts to dominate the minds of your foes, scaring them. + At level 30 it attempts to charm monsters. +6. [[[[[sPulverise] (Level 11) Cost:7 + Fires pure sound at your opponents, crushing their bodies. +7. [[[[[sCharacter Armour] (Level 13) Cost:12 + Raises a physical shield around your body. + At level 15 it also grants resistance to acid. + At level 20 it also grants resistance to fire. + At level 25 it also grants resistance to cold. + At level 30 it also grants resistance to electricity. + At level 35 it also grants resistance to poison. +8. [[[[[sPsychometry] (Level 15) Cost:12 + Senses the quality of an item. + At level 40 it identifies an item. +9. [[[[[sMindwave] (Level 18) Cost:10 + Blasts the minds of monsters close to you. + At level 25 it affect all monsters in line of sight. +10.[[[[[sAdrenaline Channeling] (Level 23) Cost:15 + Heals you, hastes you and cures you. +11.[[[[[sPsychic Drain] (Level 25) Cost:10 + Drains the life of your foes into your mana reserves. +12.[[[[[sTelekinesis] (Level 28) Cost:20 + Projects a wave of pure telekinetic force from your body, damaging and maybe + banishing monsters. diff --git a/lib/mods/theme/help/m_music.txt b/lib/mods/theme/help/m_music.txt new file mode 100644 index 00000000..0f84f08f --- /dev/null +++ b/lib/mods/theme/help/m_music.txt @@ -0,0 +1,77 @@ +|||||oy +~~~~~01|Magic|Music +~~~~~02|Music +~~~~~03|Skills|Music - Song Info +#####R === ToME Spells - Music === + +Musical songs can have powerful effects for those who have the ability to +play instruments, chiefly *****c_bard.txt*0[Bards]. + +In order to continue playing a song, mana is consumed each turn, until +either the 'Stop Singing' song is sung, or the player's mana runs out. + +Each song, as well as having a school level like any other magic spell, also +has a roman numeral following its name. The higher this number, the greater the +craftmanship of the instrument required to play it. + +Each musical instrument has a value assigned to it as well, between 1 and 4. The +higher the number, the better the craftmanship; hence it will be possible +for the bard to play higher level songs only with more powerful instruments. +E.g. a Harp(+1) will allow you to cast "Stop Singing(I)" and "Song of the +Sun(I)". A Harp(+2) would allow you to sing those songs, as well as "Flow of +Life(II)". + +There are 3 different types of instruments: Harps, Drums and Horns. Each type +of instrument contains a different family of musical songs: + + +#####vMusical Songs + +#####GAll Instruments +1. [[[[[vStop Singing(I)] (school level 1) + Stops the current song, if any. + +#####GDrums +1. [[[[[vHolding Pattern(I)] (school level 1) + Slows down all monsters listening the song. + Consumes mana each turn. +2. [[[[[vIllusion Pattern(II)] (school level 5) + Tries to confuse all monsters listening the song. + Consumes mana each turn. +3. [[[[[vStun Pattern(IV)] (school level 10) + Stuns all monsters listening to the song. + Consumes mana each turn. + +#####GHarps +1. [[[[[vSong of the Sun(I)] (School level 1) + Provides light as long as you sing. + Consumes mana each turn. +2. [[[[[vFlow of Life(II)] (School level 5) + Heals you as long as you sing. + Consumes mana each turn. +3. [[[[[vHeroic Ballad(II)] (School level 10) + Increases melee accuracy. + At level 10 it increases it even more and reduces armour a bit. + At level 20 it increases it still more. + At level 25 it grants protection against chaos and confusion. + Consumes mana each turn. +4. [[[[[vHobbit Melodies(III)] (School level 20) + Greatly increases your reflexes allowing you to block more melee blows. + At level 15 it also makes you faster. + Consumes mana each turn. +5. [[[[[vClairaudience(IV)] (School level 25) + Allows you to sense monster minds as long as you sing. + At level 10 it identifies all objects in a radius on the floor, + as well as probing monsters in that radius. + Consumes mana each turn. + +#####GHorns +1. [[[[[vBlow(I)] (School level 4) + Produces a powerful, blowing sound all around you. +2. [[[[[vGush of Wind (II)] (School level 14) + Produces a outgoing gush of wind that sends monsters away. +3. [[[[[vHorns of Ylmir(III)] (School level 20) + Produces an earth-shaking sound. +4. [[[[[vAmbarkanta(IV)] (School level 25) + Produces a reality-shaking sound that transports you to a nearly + identical reality. diff --git a/lib/mods/theme/help/m_nature.txt b/lib/mods/theme/help/m_nature.txt new file mode 100644 index 00000000..e57c5704 --- /dev/null +++ b/lib/mods/theme/help/m_nature.txt @@ -0,0 +1,54 @@ +|||||oy +~~~~~01|Magic|Nature School +~~~~~02|Nature Magic +~~~~~03|Skills|Nature - Spell Info +#####R === ToME Magic - Nature School === + +The nature school of magic contains spells that interact with nature. There +are rumours of a "Tome of the Tree" which contains all the nature school +spells within its bindings. + +Worshipping Yavanna Kementari or Ulmo also gives the ability to cast spells +from the nature school at a level of 1/2 of your prayer level. E.g. if the skill +"Spirituality: Prayer" is at level 10, Yavanna and Ulmo worshippers alike can +cast up to level 5 nature school spells. + +#####GNature Spells +There are five spells available for the nature school. These spells are: +1. [[[[[GGrow Trees] (dual school level 6) + Makes trees grow extremely quickly around you. +#####v Your Nature and Temporal skills must have reached a combined average level +#####v of 6 in order to cast this spell. +2. [[[[[GHealing] (school level 10) + Heals a portion of your hitpoints. +3. [[[[[GRecovery] (school level 15) + Reduces the length of time that you are poisoned. + At spell level 5 it cures poison and cuts. + At spell level 10 it restores drained stats. + At spell level 15 it restores lost experience. +4. [[[[[GRegeneration] (school level 20) + Increases your body's regeneration rate. +5. [[[[[GSummon Animal] (school level 25) + Summons a leveled animal to your aid. +6. [[[[[GGrow Athelas] (school level 30) + Cures the Black Breath + +#####GAir spells that can be cast with Nature skill + +1. [[[[[BThunderstorm] (dual school level 25) + Charges up the air around you with electricity. + Each turn it will throw a bolt of thunder at a random monster in sight. + This thunder does 3 types of damage: + one third of lightning + one third of sound + and one third of light. +#####v Your Nature and Air skills must have reached a combined average level +#####v of 25 in order to cast this spell. + +#####GUdun spells that can be cast with Nature skill + +1. [[[[[DGenocide] (dual school level 25) + Genocides all monsters of a specified race on the level. + At level 10 it can genocide all monsters near you. +#####v Your Nature and Udun skills must have reached a combined average level +#####v of 25 in order to cast this spell. diff --git a/lib/mods/theme/help/m_necrom.txt b/lib/mods/theme/help/m_necrom.txt new file mode 100644 index 00000000..8de4fd37 --- /dev/null +++ b/lib/mods/theme/help/m_necrom.txt @@ -0,0 +1,35 @@ +|||||oy +~~~~~01|Magic|Necromancy +~~~~~02|Necromancy Magic +~~~~~03|Skills|Necromancy - Spell Info +#####R === ToME Magic - Necromancy === +The art of Necromancy is the foul practice of manipulating the life +force of creatures. + +Necromancy powers are accessed using the 'm' key and then selecting +'Use Necromancy'; they are cast with Spell Points, like normal spells, +and do not need light to be performed. + +1. [[[[[DHorrify] (Level 1) Cost:2 + Calls upon the dark forces and opens a channel into the mind of a + monster, stunning and scaring it. + At level 21 it affects all monsters in a beam. + At level 36 it affects all monsters in a ball. + At level 46 it affects all monsters in sight. +2. [[[[[DRaise Dead] (Level 5) Cost:6 + This power makes corpses in a small radius around the caster rise as + undead ego monsters at the service of the caster. The loyalty of those + monsters is not guaranteed, though. It also heals all monsters within the + same radius. +3. [[[[[DNecromantic Teeth] (Level 12) Cost:20 + This conjures up a temporary vampiric weapon. +4. [[[[[DAbsorb Soul] (Level 20) Cost:10 + This heals you by a substantial amount every time you kill a monster within + its duration. It is especially useful when your character is in + *****ability.txt*12[Undead Form]. +5. [[[[[DVampirism] (Level 30) Cost:15 + Drains part of the life-force from a nearby monster and gives it to you. +6. [[[[[DDeath] (Level 35) Cost:100 + Yes, the name is not nice. Neither are the effects: the target dies + immediately, but so does your character (note that death is not such a great + annoyance for necromancers). diff --git a/lib/mods/theme/help/m_symbio.txt b/lib/mods/theme/help/m_symbio.txt new file mode 100644 index 00000000..b7e04632 --- /dev/null +++ b/lib/mods/theme/help/m_symbio.txt @@ -0,0 +1,50 @@ +|||||oy +~~~~~01|Magic|Symbiosis +~~~~~02|Symbiosis Magic +~~~~~03|Skills|Symbiosis - Symbiotic Powers +#####R === ToME Magic - Symbiosis === + +Symbiosis is the art of joining body, fate and sometimes even mind with +creatures not capable of moving on their own. + +While a humble student of the Craft of Slime (as it's sometimes called) +has very few options apart from asking the symbiote to help him in combat, +master practitioners have access to an incredible array of tricks. + +Once hypnotised, the monster is placed onto the body, or "worn", in order to +initiate the symbiotic relationship. + +#####uSymbiotic Powers +There are nine powers a symbiant can develop. They are: +1. [[[[[uHypnotize] (level 1) Cost:1 + The very basis of symbiosis itself, this asks a monster to lower its + natural defences so that it can be safely "worn". +2. [[[[[uRelease] (level 1) Cost:1 + Sometimes even life-long friends part. This power allows you to revert + a monster on the floor to its primal state, even though the shock of waking + up will lower it to 0 HP. +3. [[[[[uCharm never-moving] (level 3) Cost:2 + A symbiant soon learns to communicate with molds and slimes. + This power allows him to gain the "friendship" of such a creature. +4. [[[[[uLife share] (level 5) Cost:5 + The cells of the symbiant and the symbiote intermingle, spreading damage + evenly among the two organisms. +5. [[[[[uUse minor powers] (level 10) Cost:10 + Allows you to tap into minor magic abilities provided by your symbiote + such as Blink or Slow. +6. [[[[[uHeal symbiote] (level 15) Cost:14 + Consciously altering the metabolism of your symbiote, you can urge its + bodily structure to repair itself almost instantaneously. +7. [[[[[uUse major powers] (level 25) Cost:30 + Highly intelligent slimes such as Quylthulgs may be more than willing to + employ their summoning or teleporting powers on your behalf; this power + can also call upon the abilities normally invoked by "Use minor powers" + (but this would be a waste of mana). +8. [[[[[uSummon never-moving pet] (level 30) Cost:35 + By releasing certain chemicals in the air, a symbiant can attract the + attention of slimes and mold; the better specimens are found in deeper + dungeons, of course. +9. [[[[[uForce symbiosis] (level 40) Cost:60 + An expert symbiant has such control over the cells of primitive + life-forms that he can temporarily "charm" part of them, thus forcing + their powers to manifest at his own advantage. diff --git a/lib/mods/theme/help/m_tempo.txt b/lib/mods/theme/help/m_tempo.txt new file mode 100644 index 00000000..64340ee5 --- /dev/null +++ b/lib/mods/theme/help/m_tempo.txt @@ -0,0 +1,42 @@ +|||||oy +~~~~~01|Magic|Temporal School +~~~~~02|Temporal Magic +~~~~~03|Skills|Temporal - Spell Info +#####R === ToME Magic - Temporal School === + +The temporal school of magic contains spells where magic is used to meddle +in the relationship between time and space. There are rumours of a "Tome of +the Time" which contains all the temporal school spells within its bindings. + +Worshipping Yavanna Kementari or Mandos also gives the ability to cast spells +from the temporal school at a level of 1/6 or 1/4, respectively, of your prayer +level. E.g. if the skill "Spirituality: Prayer" is at level 12, a worshipper +of Yavanna can cast up to level 2 temporal school spells, whereas a worshipper +of Mandos can cast up to level 3 temporal school spells. + + +#####sTemporal Spells +There are four spells available for the temporal school. These Spells are: +1. [[[[[sMagelock] (school level 1) + Magically locks a door. + At spell level 30 it creates a glyph of warding. + At spell level 40 the glyph can be placed anywhere in the field of vision. +2. [[[[[sSlow Monster] (school level 10) + Magically slows down the passing of time around a monster. + At level 20 it affects a zone. +3. [[[[[sEssence of Speed] (school level 15) + Magically decreases the passing of time around you, allowing you to move + and act more quickly with respect to the rest of the universe. +4. [[[[[sBanishment] (school level 30) + Disrupts the space/time continuum in your area and teleports all monsters + away. + At spell level 15 it also may lock them in a time bubble for some turns. +#####v Your Temporal and Conveyance skills must have reached a combined average level +#####v of 30 in order to cast this spell. + +#####GNature spells that can be cast with Temporal skill + +1. [[[[[GGrow Trees] (dual school level 6) + Makes trees grow extremely quickly around you. +#####v Your Nature and Temporal skills must have reached a combined average level +#####v of 6 in order to cast this spell. diff --git a/lib/mods/theme/help/m_thaum.txt b/lib/mods/theme/help/m_thaum.txt new file mode 100644 index 00000000..253d52be --- /dev/null +++ b/lib/mods/theme/help/m_thaum.txt @@ -0,0 +1,31 @@ +|||||oy +~~~~~01|Magic|Thaumaturgy +~~~~~02|Thaumaturgical Magic +~~~~~03|Skills|Thaumaturgy - Spell Info +#####R === ToME Magic - Thaumaturgy === + +Thaumaturgy is a different type of magic where the spells learnt are not +restricted to one school, nor are they read out of spellbooks. Each time an +adventurer increases her thaumaturgy skill, she gains access to a few +[[[[[Rrandom] attack spells, each one automatically "learnt" at a specific +casting level. Since she doesn't need spellbooks, she does not end up with +inventory slots being filled up so quickly by the necessary items for safe +exploration of the dungeon, and can therefore collect more loot. + +The downside of this is that she has no ability to choose what spells she +learns, and no ability to improve the power of a learnt spell. So, a bolt +spell with damage 1d5 will remain at 1d5 damage for the whole game. And the +spells learnt are *all* attack spells of some sort (remembering that things +like light and stone-to-mud can damage some monsters) - so no teleporting, no +identify, no healing spells are learnt. At most, some wall creation may be +employed. + +Thaumaturgist use their magic through the 'm' key. They then select a general +group of spells, followed by a specific spell. + +Thaumaturgy spells can take the form of: +- a bolt, targeted at a single location; +- a beam, which hits all monsters in a line; +- a ball (either centred on the caster or targetable); +- an meteor strike (multiple balls in the vicinity of the caster); +- a spell that affects all monsters in line of sight. diff --git a/lib/mods/theme/help/m_udun.txt b/lib/mods/theme/help/m_udun.txt new file mode 100644 index 00000000..a903d9f9 --- /dev/null +++ b/lib/mods/theme/help/m_udun.txt @@ -0,0 +1,35 @@ +|||||oy +~~~~~01|Magic|Udun School +~~~~~02|Udun Magic +~~~~~03|Skills|Udun - Spell Info +#####R === ToME Magic - Udun School === + +The Udun school of magic contains spells where the corrupted forces of Melkor +Bauglir are used to create the final spell effect. There are rumours of an +"Unholy Tome of the Hellflame" which contains all the Udun school spells within +its bindings. + +The Udun school is available only to worshippers of *****g_melkor.txt*0[Melkor Bauglir]. They will also +need some proficiency in the magic schools of Mana, Nature, Conveyance, and Fire +(or alternatively Sorcery) to cast the Udun spells. On the other hand, the spell +power of Udun spells is greatly increased by the level of the caster. + +#####DUdun Spells +There are four spells available for the Udun school. These spells are: +1. [[[[[DDrain] (dual school level 1) + Drains the mana contained in wands, staves and rods to increase yours. +#####v Your Udun and Mana skills must have reached a combined average level +#####v of 1 in order to cast this spell. +2. [[[[[DGenocide] (dual school level 25) + Genocides all monsters of a specified race on the level. + At level 10 it can genocide all monsters near you. +#####v Your Udun and Nature skills must have reached a combined average level +#####v of 25 in order to cast this spell. +3. [[[[[DWraithform] (dual school level 30) + Turns you temporarily into an immaterial being. +#####v Your Udun and Conveyance skills must have reached a combined average level +#####v of 30 in order to cast this spell. +4. [[[[[DFlame of Udun] (dual school level 35) + Turns you temporarily into a powerful Balrog. +#####v Your Udun and Fire skills must have reached a combined average level +#####v of 35 in order to cast this spell. diff --git a/lib/mods/theme/help/m_water.txt b/lib/mods/theme/help/m_water.txt new file mode 100644 index 00000000..2eb4cc5a --- /dev/null +++ b/lib/mods/theme/help/m_water.txt @@ -0,0 +1,34 @@ +|||||oy +~~~~~01|Magic|Water School +~~~~~02|Water Magic +~~~~~03|Skills|Water - Spell Info +#####R === ToME Magic - Water School === + +The water school of magic contains spells where the element of water is +used to create the final spell effect. There are rumours of a "Tome of the +Everrunning Wave" which contains all the water school spells within its +bindings. + +Worshipping Yavanna Kementari or Ulmo also gives the ability to cast spells +from the water school at a level of 1/2 or 3/5, respectively, of your prayer +level. E.g. if the skill "Spirituality: Prayer" is at level 10, a Yavanna +worshipper can cast up to level 5 water school spells, whereas an Ulmo +worshipper can cast up to level 6 water school spells. + +#####bWater Spells +There are four spells available for the water school. These Spells are: +1. [[[[[bGeyser] (school level 1) + Shoots a geyser of water from your fingertips. + Sometimes it can blast through its first target. +2. [[[[[bVapor] (school level 2) + Fills the air with toxic moisture to wash away annoying creatures. +3. [[[[[bEnt's Potion] (school level 6) + Fills up your stomach (i.e. satisfy hunger). + At spell level 5 it emboldens your heart (boldness). + At level 12 it make you heroic. +4. [[[[[bTidal Wave] (school level 16) + Summons a monstrous tidal wave that will expand and crush monsters under + its mighty waves. +5. [[[[[bIce Storm] (school level 22) + Engulfs you in a storm of roaring cold that strikes your foes. + At spell level 10 it turns into shards of ice. diff --git a/lib/mods/theme/help/macrofaq.txt b/lib/mods/theme/help/macrofaq.txt new file mode 100644 index 00000000..97fad944 --- /dev/null +++ b/lib/mods/theme/help/macrofaq.txt @@ -0,0 +1,2360 @@ +|||||oy +~~~~~43|Macros +~~~~~44|Keymaps +#####R====================================================================== +#####B ToME Macro FAQ + + Original Angband Macro FAQ by Jim Lyon + (jplyon@attglobal.net) + 09-Dec-2000 + Compiled from usenet postings to r.g.r.a + and Angband source & documentation + +#####B Edited by Dawnmist (angband@dawnmist.8m.com) +#####B for PernAngband 5.x.x on 03-Aug-2001 +#####B with permission from Jim Lyon +~~~~~30 +#####R====================================================================== +#####R1. Introduction +#####R====================================================================== + +#####G---------------------------------------------------------------------- +#####G1.1 About this FAQ +#####G---------------------------------------------------------------------- + +This FAQ is mean to be a companion to the standard ToME help files +for using inscriptions, macros, and keymaps. The ToME help files +which also describe them are listed in the "References" section. + +This documentation is for ToME, version 4.2.x. + +#####B================================== +#####B SPOILER ALERT +#####B================================== + +This document gives some information on how the game does or doesn't +work that might be considered spoiling. +(Most players advanced enough to use macros probably won't notice.) + +#####G---------------------------------------------------------------------- +#####G1.2 Table of contents +#####G---------------------------------------------------------------------- + + *****macrofaq.txt*30[1. Introduction] + *****macrofaq.txt*5[2. Quick start tutorial] + *****macrofaq.txt*32[3. Overview] + *****macrofaq.txt*33[4. Common macros and techniques] + *****macrofaq.txt*34[5. Common questions] + *****macrofaq.txt*35[6. Common problems] + *****macrofaq.txt*36[7. Inscriptions added by the game] + *****macrofaq.txt*37[8. Keys and commands] + *****macrofaq.txt*38[9. Pref files] +*****macrofaq.txt*39[10. Macro editing commands] +*****macrofaq.txt*20[11. Advanced macro techniques] +*****macrofaq.txt*41[12. Problems] +*****macrofaq.txt*42[13. Miscellaneous] + +#####G---------------------------------------------------------------------- +#####G1.3 Notation +#####G---------------------------------------------------------------------- + +#####BSingle Quotes (') +These are generally used to delimit a single character to be typed in. +These shouldn't by typed in themselves. + +#####BDouble Quotes (") +These are generally used to delimit a sequence of characters to be +typed in. These shouldn't by typed in themselves. + +#####BParentheses ( ) +These are generally used for single-key Angband commands. + +#####BBraces { } +These are used to enclose inscriptions. These aren't typed in as part +of inscribing an item. They are added by the interface. + +#####G= Special Keys = +#####G----------------------------------- +The following abbreviations are used in this document. These keys may +be named differently or missing on some keyboards. Some keys may be +duplicated. These abbreviations shouldn't be typed in literally. For +example, when F1 is encountered in a string of keys to press it means +to press the F1 function key, not 'F','1', unless otherwise stated. +Additional special keys may be listed later. + +Alt Alt +Ctrl Control +Del Delete +Esc Escape +Enter Enter / Return +F1 Function key F1, ... +Shift Shift + +#####G= System abbreviations = +#####G----------------------------------- +Each system that ToME compiles on has a semi-standard 3-letter +abbreviation. These are commonly referred to in the source and docs +using "xxx" as a "wildcard" standing for any one of them. In this +document "***" is used instead because there are actual generic files +not associated with any specific system that use "xxx". Sometimes this +refers to a feature instead of a specific system: "xxx" is used for a +generic / default file, and "new" is used for Adam Bolt's tiles. + +~~~~~5 +#####R====================================================================== +#####R2. Quick Start Tutorial +#####R====================================================================== + +This section is designed to get you quickly using the most common +keymaps and macros. Later sections explain the techniques used in more +detail. These examples may not be the "best" ones to use in real play. + +#####G---------------------------------------------------------------------- +#####G2.0 Definitions +#####G---------------------------------------------------------------------- + +First, you should know some fundamental terms: + +Actions are sequences of keypresses that the game can recognise. They +can't be recorded by the game, but must be input manually. + +Macros and keymaps map a keypress to an action. They can be used to +customise the keyboard, reduce typing, and speed up game play. Macros +must be used when the trigger key doesn't have a system-independent +representation. Keymap actions can only contain underlying commands. +[[[[[BMost customisation should be done with keymaps instead of macros when] +[[[[[Bthere is a choice.] + +Inscriptions are "markings" which you can put on any game item. One +use is to label items in a way that doesn't depend on inventory +position. Another allows verifying the selection of an item. Under the +right conditions they can save your life. + +#####G---------------------------------------------------------------------- +#####G2.1 Swap weapons +#####G---------------------------------------------------------------------- + +First inscribe your main weapon: +(Press the following keys in sequence) + +1) { Inscribe an object +2) * Show inventory list +3) / Switch to equipment list +4) a Main weapon slot +5) @w0 Wield when object 0 is chosen +6) (Hit Enter) + +Now inscribe the second weapon: + +1) { Inscribe an object +2) * Show inventory list +3) (Choose letter of second weapon) +4) @w0 Wield when object 0 is chosen +5) (Hit Enter) + +Finally, ToME (unlike standard 'Vanilla' Angband) does +not have an automatic trigger key to swap items, so it must be +created. Select a key that is not being used for any other commands +('X' in the normal keyset is free - see *****command.txt*0[command.txt]), and create +the following keymap: + +1) @ Interact with macros +2) 8 Create a keymap +3) X The trigger key for the keymap +4) w0 Wield object 0 +5) (Hit Enter) +6) (Hit Esc to exit the editor) + +Now to swap weapons, just press the trigger key 'X' which is bound to +the default keymap "w0". You may also press "w0" directly to swap. +~~~~~45|Macros|Macro recorder +~~~~~46|Keymaps|Macro recorder +#####G---------------------------------------------------------------------- +#####G2.2 Using the macro-recorder +#####G---------------------------------------------------------------------- + +You may find all the key-presses involved in ToME a long and time-consuming way +to play the game. There are ways to speed up repeated commands by assigning +them to a trigger key which can help. These are called macros or keymaps. + +The most obvious use for these in ToME is for mage-types, especially sorcerors, +who rely on their spells for just about everything. Typing mbaa*t in order to +fire a Manathrust is fine if you only have to do it once or twice, but can +quickly get annoying when you're doing it every move. Far easier to assign that +sequence of keypresses to a single trigger key which you can then press as many +times as you need. (Until your SP run out of course!) + +The easiest way to assign a macro is to use the macro-recorder. Start this by +hitting the '$' key. You'll then receive a message telling you that the macro +recorder has now started and you will need to press the '$' key a second time +to stop the recorder. Preparation is all important here. It is best to be in a +situation where you really NEED to cast the spell before recording the macro, +so you use all the correct casting techniques and the game behaves as it would +in a real (combat) situation (if the spell is to be generally cast in combat). + +So assuming we're going to create a macro for manathrust. We've walked into a +room and there's a nasty small kobold. What do we do? + +1) $ Start macro recorder +2) *t target monster (or player if no monster in Line of sight) +3) m open skills menu +4) @ enters verbose mode +5) Cast a Spell selects skill to use - CASE SENSITIVE +6) @ enters verbose mode +7) Manathrust casts spell from any book/spell container - CASE SENSITIVE +8) $ end macro recorder +9) y confirms macro keystrokes[[[[[B*] +10) (choose trigger key) +11) @ opens macro saving/loading screen +12) 2 appends macros to a file +13) (choose a name for the file, e.g. sorceror.prf) +14) (Hit Enter) +15) (Hit Esc to exit the editor) + +This will search for the spell in all your books and equipment. If it is found, +in either a book or a wielded item that contains a spell, then the spell is +cast at the targetted monster. + +This technique can be used for all the other skills as well (Use Mindcraft, +Forge Ammo) etc. + +[[[[[B*]If you answer no the recorder continues recording keypresses. If +you know you have made a mistake, you need to answer yes, and then not +save the macro! + +~~~~~12 +#####G---------------------------------------------------------------------- +#####G2.3 Prevent unwanted use of an item +#####G---------------------------------------------------------------------- + +#####BPrevent "losing" an item by "accident": + +1) { Inscribe an object +2) * Show inventory list +3) (Choose an item) +4) !d!k!v + !d - don't drop (d) + !k - don't destroy (k) + !v - don't throw (v) +5) (Hit Enter) + +This prevents dropping, destroying, or throwing the item. You will be +asked if you really want to do so. This is one of the most common +inscriptions used, and one of the most useful. + +#####BPrevent "using" an item at all: + +1) { Inscribe an object +2) * Show inventory list +3) (Choose an item) +4) !* Don't do anything with this item without verifying +5) (Hit Enter) + +This inscription is commonly used on Scrolls of Word of Recall... +~~~~~8 +#####G---------------------------------------------------------------------- +#####G2.4 Saving these macros and keymaps for reuse +#####G---------------------------------------------------------------------- + +Save the macros and keymaps for reuse by the current character: + +1) @ Interact with macros +2) 2 Append macros to a file + (optionally enter a filename: e.g. dump.prf or dump.txt) + (Hit Enter to save the file with the filename shown) +3) 6 Append keymaps to a file + (Hit Enter to save the file with the filename shown) +4) (Hit Esc to exit the editor) + +This pref file will be automatically loaded any time a character with +a name, race, or class matching the filename is loaded. + +The "Append macros/keymaps to a file" commands will append ALL current +macros/keymaps to the given file. They will not overwrite the file. + +You should edit the file to remove macros that weren't added by you, +to reduce clutter and prevent errors. Unfortunately the best way to do +this is still "by hand". Open up the pref file in a text editor and +remove the duplicate macros and keymaps added. These will be added +after the headers "# Automatic macro dump" and "# Automatic keymap +dump". The ones you added will be the very last ones in the list. The +others are the entire set of keymaps and macros from all other prefs +loaded. (This step isn't necessary, but is very helpful.) + +~~~~~32 +#####R====================================================================== +#####R3. Overview +#####R====================================================================== + +#####G---------------------------------------------------------------------- +#####G3.1 Inscriptions +#####G---------------------------------------------------------------------- + +Inscriptions are "markings" which you can inscribe on any game item. + +One common use is recording where you got one of your favorite items. +Example: The Broad Sword 'Glamdring' (2d5) (+10,+15) {icky thing, 50'!} + +Another is to note important resists or activations on an item to make +figuring out resist combinations easier. +Example: The Nice Shiny Armor (-3) [35,+25] {resDk,resDis,A:Geno} + +Inscriptions can "number" an item so that you don't have to know where +it is in your inventory. +Example: inscribing your scrolls {@r1} lets you use '1' at the prompt +for which scroll to read, instead of having to use the inventory letter, +which can change unnoticed. + +Number inscriptions work together with macros to allow reproducible +labeling of items independent of inventory position. + +Note that the game produces "fake" inscriptions, which look like real +inscriptions, but are really just displayed the same way (e.g. "cursed"). + +Finally, if you are in symbiosis with another creature, you can name it by +inscribing it with "#named SomeName" (the word "#named" must be entered +literally at the start of the inscription). This will tell the game that +your symbiotic partner should be referred to by its name, rather than simply +"Your white jelly". This has no effect on game play other than the aesthetic. + +#####G---------------------------------------------------------------------- +#####G3.2 Macros +#####G---------------------------------------------------------------------- + +Macros are mappings from a single "logical" keypress to a sequence of +keypresses, allowing you to use special keys on the keyboard, such as +function keys or keypad keys, possibly in conjunction with modifier +keys, to "automate" repetitive multi-key commands that you use a lot. + +[[[[[BFor keys which don't have a system-independent representation, such as] +[[[[[Bfunction keys, this is the only way to change their behavior.] + +#####G---------------------------------------------------------------------- +#####G3.3 Keymaps +#####G---------------------------------------------------------------------- + +Keymaps are vaguely related to macros. A keymap maps a single keypress +to a series of keypresses, which bypass both other keymaps and any +macros. Angband uses keymaps to map the original and the roguelike +keysets to the underlying command set, and allows the user to modify or +add keymaps of their own. All keymap actions must be specified using +underlying commands. Keymaps and macros aren't expanded. The original +keyset is almost identical to the underlying keyset, except that +"numbers" are mapped to ";" plus a direction, "5" is mapped to ",", +and a few control-keys are mapped to various things. See *****command.txt*0[command.txt] +for the full set of underlying commands. Keymaps also allow the +"disabling" of a command by mapping it to "\x00". + +#####G---------------------------------------------------------------------- +#####G3.4 Pref files +#####G---------------------------------------------------------------------- + +Preference files save commands such as macros and keymaps which are +used to customise the game. They are used to implement the "original" +and "roguelike" keysets. They provide default appearances for items. + +They also implement the default behaviors which make Angband look and +play the same (for the most part) on different systems. + +Pref files can be saved with the name of a player name, class, and +race, and anytime a player with a matching characteristic is loaded, +the appropriate pref file is loaded. This makes some customisations +transparent and automatic. + +Pref files let you do some things that could otherwise only reasonably +be done by changing the info files or source, such as changing the +appearance of a given terrain feature, or the symbol used for the +player. + +Pref files let you set up and save your favorite game options, and +have them available for new characters without having to redo them. + +~~~~~33 +#####R====================================================================== +#####R4. Common macros and techniques +#####R====================================================================== +~~~~~13 +#####G---------------------------------------------------------------------- +#####G4.1 Clearing the command buffer +#####G---------------------------------------------------------------------- + +[[[[[v++++++++++ This is one of the most important techniques! ++++++++++] + +Almost all action strings should begin with a sequence to clear the +buffer of existing commands and messages. These sequences are often +omitted in usenet postings and in this FAQ because they clutter the +description, but they should almost always be used. + +If an unfinished command is still waiting for input when you press the +trigger key of a macro or keymap, the characters of its action string +will be taken as input for the command. The command will ignore keys +it doesn't know how to handle until it finds one that it does. This +often leads to something completely unexpected, with embarrassing +results such as your death, or losing a really nifty item. + +If there are still messages waiting, the first characters in the +action will instead just clear the waiting messages. How this happens +depends on whether the *****option.txt*1[option (quick_messages)] is set. Then the action +will start executing in the middle of its action string, with equally +dangerous results as in the above case. Note that some messages caused +by a command are quite rare, and others could be produced by a game +state change like becoming hungry that has nothing to do with the command. + +These types of problems are more common when using an action such as +auto-firing where a trigger key is repeatedly pressed. + +[[[[[B"\e\e\e"] +Multiple escapes are used to clear the command buffer. Escape cancels +any command/input still being processed, and also clears a [single] +message whether/not the (quick_messages) option is set. This string +should be used to begin all action strings. It is also wise to put it +between actions in multi-action macros. Note that this technique can +also be dangerous, hiding warnings or important information. +Example: an action like "*tf1" would be changed to "\e\e\e*tf1". + +There are a few situations in which you do not want to use escapes. +For example, after the spell Detect Monsters, an escape will clear the +detection. Or if the action is part of a multi-part action or is meant +to wait for user input such as the firing action "f1" which will wait +for targeting information. + +[[[[[B"\s\s\s"] +Spaces are useful for clearing messages, but won't cancel a command +that is waiting for an item choice. Sometimes it is useful to split +an action into two parts and bind them to two separate trigger keys. +Prefixing spaces before the 2nd action will discard any remaining +messages without canceling unfinished commands from the 1st one. Some +players create a macro consisting of a large number of spaces to be +used to clear a flood of messages. + +See sections: +- *****macrofaq.txt*1["Messages and Questions"] for how to deal with them. +- *****macrofaq.txt*2["My macro outputs "e - Floating Eye"..."] for an example of a common + mistake using escape sequences. +- *****macrofaq.txt*3["My macro drops/takes off my main weapon!"] for an example of the + kind of thing that can go wrong when you fail to use them. +- *****macrofaq.txt*4["What just killed me?"] for an example of skipping over messages + *too* fast. + +#####G---------------------------------------------------------------------- +#####G4.2 Swap weapons +#####G---------------------------------------------------------------------- + +If you followed the *****macrofaq.txt*5[Quick-Start Tutorial] in Section 2.1, the 'X' key has +the keymapping "w0", which will wield the first item inscribed as "@0" +or "@w0". This will swap between 2 weapons which are both inscribed with +{@0} or {@w0}. If there is more than one item in the inventory inscribed +as 0, it will use the first one. + +This will also work for other wieldable items. For example, if you +have a helm which gives telepathy, which can be a real pain when you +need to rest, it can be used to swap it with another helm. + +Inscribing weapons with {@w1@w0}, {@w2@w0} allows directly wielding a +specific one. If you don't want that ability, you can just inscribe +both with {@w0}. These can also be inscribed as just {@1@0} and {@2@0} +if you don't inscribe any other items with numbers, although this is +not recommended. + + +#####G---------------------------------------------------------------------- +#####G4.3 Resting +#####G---------------------------------------------------------------------- + +#####B= Rest as needed = +"R&\r" +R - rest +& - until 100% healthy +\r - return. + +Note that this isn't particularly dangerous, because the game will +break out of the resting command if you are disturbed by hunger, +sensing a monster, ... + +#####B= Rest for a specific duration = +"R100\r" +R - rest +100 - turn count +\r - return + +This version is useful if you are already healed up. For fighter +pseudo-id, for example. Also useful for recovering a fixed amount of +mana before/after a spell, waiting for a Recall spell to kick in,... + +Note that this is one of the few times when you can directly enter the +count after the command. Usually you need to enter the count before +the command, using the (0) count command. + +#####B= Maximum Rest = +"R9999\r" + +The maximum number of turns you can use as an argument. This can be +useful when waiting for shop inventory to change, etc. Be sure to take +off any non-permanent light source, and have plenty of food when you +rest for long periods of time. + +#####G---------------------------------------------------------------------- +#####G4.4 Activate the phial +#####G---------------------------------------------------------------------- + +"Am\s\s" +A - Activate +m - light source (the phial). +\s - skip message +\s - skip message + +"Am\s\sR50\r" +Activate the phial and rest for 50 turns. + +This can be bound to 'F' key since you won't need to refuel lanterns +much after you have the phial :). + +#####G---------------------------------------------------------------------- +#####G4.5 Kill item(s) on floor +#####G---------------------------------------------------------------------- + +The need to destroy large numbers of items arises as one reaches +deeper levels of the dungeon. The auto-squelch feature only partially +reduces the need for this. The behavior of these actions is affected +by the option (quick_messages), and the possible presence of a pile of +items on the floor. + +*****option.txt*1[(quick_messages)] allows any key to cancel a message. + +In ToME, multiple items on the floor are displayed in a list. +This allows the player to select an item from the floor by entering an +item index when there is a pile (more than one item). This generally +complicates writing these macros. + +Note that space '\s' is used to clear messages in the action strings, +but one could use escape '\e' just as well. + +Note: you cannot destroy artifacts, so these macros are safer and more +useful than they might first appear. The (k) Destroy item command will +fail when trying to destroy an artifact, leaving any following +characters in the action string, which may be interpreted differently +than anticipated. + +[[[[[B"k-yy"] +k - Kill item +- - Select item from floor +y - "yes" to query "Really destroy a <item>?" +y - skip the "you destroy the <item>" message. + +This version only works when (quick_messages) option is on. Here the +last 'y' key gets rid of the last message, since any key will. This +won't work for piles. The 'y' will be ignored as an invalid item choice. + +[[[[[B"k-y\s"] +k - Kill item +- - Select item from floor +y - "yes" to query "Really destroy a <item>?" +\s - skip the "you destroy the <item>" message. + +This version works as above, but also when (quick_messages) is off. + +[[[[[B"0k-y\s"] +0 - enter count (causes to skip prompt for how many to destroy) +k - Kill item +- - Select item from floor +\s - skip the "you destroy the <item>" message. + +Destroy a single item on floor below you. Doesn't prompt for a count. +This won't work for piles, which will prompt you for the item. Works +correctly when (quick_messages) is off, because there is no prompt +for how many to destroy. + +[[[[[B"0k-ay\e"] +0 - enter count (causes to skip prompt for how many to destroy) +k - Kill item +- - Select item from floor +a - either item 'a', or ignored +\e - escape (ignored), or cancel message + +Destroy a single item on floor below you. Doesn't ask to confirm. +[[[[[vWARNING:] This action can destroy the first item in your inventory if +there aren't any items on the floor below you! + +The leading '0' causes a prompt for a count to be skipped. If there is +a pile, the 'a' key will select the top item in the pile. If not, the +'a' will aim a wand, the following 'y' will be ignored, and the final +escape will cancel the aiming. + +[[[[[B"0k-yay\e"] +0 - enter count (causes to skip prompt for how many to destroy) +k - Kill item +- - Select item from floor +y - "yes" to query "Really destroy a <item>?", or ignored. +a - top item (a) in a pile, or activate wand. +y - "yes" to query "Really destroy a <item>?" (for piles). +\e - skip the "you destroy the <item>" message. + +The above action will work in most cases. This version works correctly +for piles. If there is a pile, the 'y' is ignored and the 'a' selects +the top item. If there isn't a pile, then the 'y' will correctly answer +the yes/no question "Really destroy a <item>?", and the following "ay" +will aim a rod, and then ignore the 'y' key press, and the final escape +will cancel the aiming. Works correctly when (quick_messages) is off. +When (quick_messages) is on, and there is no pile, the 'a' will cancel +the message, and the following 'y' will be passed through as an +unimplemented command, and the space will cancel the error message. + +Backslashes "\\" may be required to keep the 'y's from being +interpreted as keymaps in case 'y' has been assigned one. + +#####G---------------------------------------------------------------------- +#####G4.6 Fire missile at nearest target +#####G---------------------------------------------------------------------- + +Each of these needs "\e\e\e\e" afterwards to cancel up to 4 possible +messages. The first message will always occur. Note that adding too +many escapes can cause you to miss the messages in which the monster +fights back. +- "You have NN <ammo> left. -more-" +- "The <ammo> hits the <monster>. -more-" +- "It was a <adj> hit! The monster ... -more-" +- "The <monster> dies/grunts with pain/..." + +[[[[[B"f*t"] +f - fire ammo from quiver slot +* - target +t - select first target + +Note that targeting is affected by the option (*****option.txt*4[use_old_target]). If +this action is used with the (use_old_target) option set, the "f" +part will fire the missile before the targeting part "*t" is reached. +See section *****macrofaq.txt*6["My auto-firing macro shoots the wrong target!"]. + +[[[[[B"*tf"] +*t - select first target +f - fire ammo from quiver slot + +If (use_old_target) is on, this works correctly, by selecting the +target before firing. If the option is off, it will still prompt you +to select a target, even though you just selected one. + +[[[[[B"*tf*t"] +*t - select first target +f - fire ammo from quiver slot +*t - select first target + +This works correctly for (use_old_target) either on/off. If the option +is on, this works by selecting the target before firing. If the option +is off, the first target selection will be ignored, and firing will +wait on the second target selection. + +Note that if there are no valid targets, "*t" will select the player's +current position. Also, it is fairly easy to make safe assumptions +about the (use_old_target) option, since a player doesn't tend to +change back and forth. It is generally easier to make one set of +actions that work for (use_old_target) on, and another for it off. + +Note also that the swapping weapon macro can be very useful for swapping +the type of ammo in the quiver slot when you have two different sets of +ammo you use - your standard "fire at everyone normal" ammo (usually +not enchanted), and your big damage "Uniques and nasty monster" +enchanted ammo. + +#####G---------------------------------------------------------------------- +#####G4.7 Preventing actions +#####G---------------------------------------------------------------------- + +#####B= Prevent selling = +{!d} +Prevent selling - use on main weapon, artifacts. + +#####B= Prevent going up/down = +{^<} +Verify before going up stairs. +{^>} +Inscribe boots to make confirm before going down stairs. +This can also be useful on Charisma boosting items that you wear +around town but don't want to take into the dungeon. +{^>^r^z^m^p} +Prevent leaving town with this item. Need to catch stairs, scrolls and +rods of Recall, and Mage and Priest Word of Recall spells. + +#####G---------------------------------------------------------------------- +#####G4.8 Warrior macros and inscriptions +#####G---------------------------------------------------------------------- + +#####B= Identify with list = +Inscribe Identify scrolls {@r0}. +Then action "r0*" will cast Identify and bring up the inventory list. + +#####B= Identify floor = +"r0-" will Identify without showing the inventory. + +#####G---------------------------------------------------------------------- +#####G4.9 Verification techniques +#####G---------------------------------------------------------------------- + +#####B= Verify All = +{!*} +verify any attempt to use this item. Useful for some things such as +Scrolls/rods of Recall that you don't want to lose or use by accident. + +#####B= Verify drop, destroy, throw = +{!d!k!v} +don't drop, destroy, or throw this item. Prevents dropping your +favorite weapon,... This is one of the most useful inscriptions, as it +prevents the kind of typing accidents that can get you killed. + +#####B= Verify selling = +{!d} +Prevents selling as well as dropping. + +#####B= Multiple verification = +These inscriptions can be repeated. So {!*!*} will make you confirm +twice for any action using that item. + +#####G---------------------------------------------------------------------- +#####G4.10 Canceling targeting +#####G---------------------------------------------------------------------- + +[[[[[B"*\e\s"] +* - start targeting +\e - cancel targeting. +\s - skip message "Target Aborted." + +OR + +[[[[[B"*q\r"] +* - start targeting +q - cancels targeting. +\r - skip message "Target Aborted." + +This is useful before casting Stone to Mud, or a ball spell. For ball +spells you usually want to target the middle of a pack, or sometimes +to "miss" the creature in order to get the ball to detonate on a +nearby wall. + +Using a targeted action after this will cause the user to be prompted +for a target. + +Canceling targeting is made necessary by the existence of the option +(use_last_target), which causes an action which requires a target to +use the last target without prompting. See section +*****macrofaq.txt*6["My auto-firing macro shoots the wrong target!"] for more on this. +~~~~~15 +#####G---------------------------------------------------------------------- +#####G4.11 Automatically loading pref files +#####G---------------------------------------------------------------------- + +Angband automatically loads pref files when a character is loaded or +born. Among the last ones loaded are: "<$RACE>.prf", "<$CLASS>.prf", +and "<$PLAYER>.prf", in that order. These are the best ones to use to +customise the game for individuals. The order is important because +pref files which load later will overwrite options and macros/keymaps +from previous ones. + +Here <$RACE> is the name of the character's race, <$CLASS> is the name +of its class, and <$PLAYER> is the character's name. Both <$RACE> and +<$CLASS> have a fixed number of choices. These are listed for ToME +in section *****macrofaq.txt*7["Pref file loading order"]. + +Your character's name is the one that appears during game play in the +upper left hand corner of the screen. If it isn't visible there, you +can use the (C) Character description command. Note that this name may +be different than the filename of the character's save file. + +Filenames for the save and pref files are built from a "base name", +which is the player name with all non-alphanumeric characters changed +to underscores (_). On Windows and DOS systems the base name will also +be truncated to 8 characters. This could lead to different characters +having the same (default) pref files. +Example: "Grog the Elder" and "Grog the Younger" would both try to +load the same pref file "Grog_the.prf". + +In recent versions of ToME "<$PLAYER>.prf" is the default filename +when saving your macros and keymaps from the (@) Interact with macros +screen. Just hit Enter to accept that name. + +On some systems you may encounter problems automatically loading this +file if your name is more than 8 characters, or if it contains spaces +or special characters. + +See section *****macrofaq.txt*8["Saving these macros and keymaps for reuse"] for how to +save your character's preferences. + +See section *****macrofaq.txt*7["Pref file loading order"] for the full list of pref files +loaded and their order. + +Note: for pref files to load automatically they must end in the file +extension "prf", which is the default when saving pref files. But it +is possible to save and load pref files with any or no file extension, +from the macros and visuals editor screens. + +#####G---------------------------------------------------------------------- +#####G4.12 Multiple macros bound to one trigger key +#####G---------------------------------------------------------------------- + +Angband supports using modifier keys on trigger keys. One thing this +lets you do is easily choose between variants of an action. Another is +to minimise the amount of moving your hands have to do, speeding up +play and reducing stress on your wrists. + +[[[[[BYou can bind multiple versions of the same macro to the same trigger] +[[[[[Bkey, using Alt, Control, Shift in different combinations] to choose +among the different versions. +Example: use <Alt> for targeted, and <Shift> for non-targeted. + +Another use is to heavily use modifiers on numeric keypad keys. The +standard version already comes with Shift-<digit> bound to running in +that direction. But by using various combinations of modifier keys, it +is possibly to play with the right hand almost always on the numeric +keypad, and the left on the modifier keys. + +#####G---------------------------------------------------------------------- +#####G4.13 Multi-part actions +#####G---------------------------------------------------------------------- + +Better to only do this when spells have ~0% failure. +Be careful of the order of commands. Commands that leave useful info +on the screen shouldn't be followed by ones that will clear it. +Be careful of commands that set or clear targets. +Use "\e\e\e\e" in-between commands to be safe. + +#####G---------------------------------------------------------------------- +#####G4.14 Easy running +#####G---------------------------------------------------------------------- + +Bind Shift+<keypad dir> to running for each of the directions. +For example, running "North": + +1) @ Interact with macros +2) 4 Create a macro +3) Shift+8 (Trigger key for the macro) +4) \\. Run + 8 "North" +5) (Hit Enter) +6) (Hit Esc to exit the editor) + +Macros for the other directions are added similarly. Remember that the +original and roguelike keysets differ, but using the backslashes makes +sure that the "underlying" keyset gets used: + 7 8 9 + 4 6 + 1 2 3 + +These macros are already in the "pref-***.prf" files that ship with +the standard Angband distribution for some systems, but not all. +Systems "mac", "win", "x11" have them. If you aren't sure if you have +them, just try moving in any direction with the shift key down. + +[[[[[BThese do have to be macros instead of keymaps], because they rely on +keypad keys having different scan codes than the top-row number keys. + +There are also default macros for Ctrl+<dir> which applies the command +(+) Alter to that direction. + +#####G---------------------------------------------------------------------- +#####G4.15 Farming techniques +#####G---------------------------------------------------------------------- + +#####v+++ NOTE: This is considered scumming! (cheating) +++ + +Farming is the practice of automatically "harvesting" large numbers of +weaker monsters for their experience value. This is usually done to +advance a lower level character. There are apparently several methods +that the "old timers" used to use. I don't know that farming is that +popular any more. Even then it was sort of a lark. + +Apparently a golf ball is just the right size and weight for many +keyboards to hold a key down and get it to auto repeat. Then you walk +away, and the next morning you have gained several levels. Ballpoint +pen caps are also supposed to be good at wedging a key down. + +Using a farming macro for long periods of time like this requires a +way of getting food, so it really needs to be employed by a magic user +who can create their own food. + +Use turn counts with attack (move) commands to move around the room, +mowing down creatures as you move. Periodically rest enough to +regenerate to full mana. This may not be necessary if it takes long +enough to kill the monsters as you move. + +This requires an effective macro and a room full of breeders which +can't attack for enough damage to kill you. Farming for short periods +of time with a fighter class is quite feasible. The limitation for +fighters is food. The limitation for spell casters is probably hit +points. You may also need to insert action sequences for healing if +the farmed monsters are capable of significantly damaging you. + +Note that red and green worm masses can knock down the doors of the +room you're in. Blues can destroy potions and flasks, so you will need +to stash your potions outside somewhere before farming. +~~~~~10 +#####G---------------------------------------------------------------------- +#####G4.16 Macros can contain their own trigger key +#####G---------------------------------------------------------------------- + +It is permissible to make a macro or keymap which contains its own key +in its action. It won't cause recursion, but there are a few wrinkles. + +Example: you can bind "*tf1" to the 'f' key, to cause it to auto-fire +at the nearest target. You can still use the 'f' key for Fire in other +macros or keymaps. + +If you bound 'f' as a keymap you will need to use "\\f" for Fire when +it is used in a macro action string. You don't need to do anything +special to use it in a keymap in its usual sense. Keymap and macro +expansion isn't done inside keymap action strings. + +If you bound 'f' as a macro, the problem will be in entering the new +macro or keymap in the editor. When you try to press an 'f' key for +the action, it will expand to "*tf1", even when you don't want it to. +You will first have to remove the macro bound to 'f', then add the +macro or keymap that uses 'f' in its action, and then reenter the 'f' +macro. You can also create the macro in a pref file and load it using +the "Load pref file" command in the (@) Interact with macros screen. + +#####G---------------------------------------------------------------------- +#####G4.17 Changing the player's color and character (ASCII text display) +#####G---------------------------------------------------------------------- + +#####B= Using the Visuals Editor = +1) % Interact with visuals. +2) 6 Change monster attr/chars +3) a (repeatedly) cycle thru colors (A moves backwards) +4) c (repeatedly) cycle thru characters (C moves backwards) +5) Esc accept changes +6) Esc exit the editor + +#####B= Using the Enter User Pref command = +1) " Enter user pref line +2) "R:0:<attr>:<char>" + The user pref line. + <attr> - the attr (color) specified as an integer index. + <char> - the (ASCII) character specified as an integer. +3) (Hit Enter) + +You can't directly use the Angband attr letters to specify colors, but +must instead use their index. Eg 4 is Red. These indexes can be found +from within the game using the (&) Interact with colors command. That +editor also allows you to change the colors used by the game. + +The <char> integer is generally the index of an (ASCII) character. +Non-ASCII characters may be available on some systems. Available +characters can found using the (%) Interact with visuals command. + +These integers can be specified in decimal, hexadecimal, or octal +notation. Decimal is the default, hexadecimal numbers are prefixed +with "0x", and octal numbers are prefixed with 0 (zero). Example: the +standard character for the player is '@'. This may be entered as "64", +"0x40", or "0100". Yellow may be entered as "11", "0x0B", or "013". + +This pref line can be added to any pref file to save the change for +future reuse. Changes made using the internal colors editor screen can +be dumped from that screen. Note that colors and characters saved in +pref dumps are in hexadecimal. + +After making a change, you must move the character or otherwise cause +a screen redraw for the change to be visible. + +If you make a mistake, you can use the (0) command in the editor to +reset the visuals to their original colors and characters. + +#####B= Changing Using the Monster Info file = +#####B---------------------------------------- + +This may also be done by changing the entry for the player in the info +file "r_info.txt". The player data starts with line "N:0:Player". In +the following line G:<c>:<a> the character <c> is entered directly, +and the attr (color) is specified by letter. See the section "Message +color lines" for the list of standard colors. In many versions you +will have to delete the file "lib\data\r_info.raw" and restart the +game for this change to take effect. Note that that char/attr pair is +entered in the opposite order as for an R: user pref line. + +#####B= Options which Change Player appearance = +#####B------------------------------------------ + +These are accessible through the (=) Set options command. + +*****option.txt*2[(hilite_player)] -- causes the player's symbol to be drawn with the +"cursor" on it. It will be drawn with the same color as the character. + +*****option.txt*3[(player_symbols)] -- for graphics mode only, and only works when option +(use_graphics) is also on. This apparently varies the player graphic +and its color based on class, race, and sex. + +#####G---------------------------------------------------------------------- +#####G4.18 Recharging a rod using a Recharge Item spell +#####G---------------------------------------------------------------------- + +(You can also recharge staffs and wands with this technique.) + +Inscribe the rod with {@m<d>}, where <d> is any decimal digit not +already used as a label. + +The trick is that we want to use a digit to label the rod so we can +refer to it using its label instead of its inventory letter, but we +have usually used up many of the digits for spell books. If we were to +label the rod with {@m1} and the first spellbook was also labeled with +{@m1}, then the spellbook will sort first in the inventory so it will +be found first when looking for item '1' to use with the (m) command. +So that would try to recharge the spellbook, which will fail. Angband +doesn't restrict itself to "appropriate" items when looking for a +labeled item. It simply finds the first one whose command letter and +digit match. + +You can't get around this by omitting the letter 'm', or using 'z' +instead. Using no command letter means it will still match. And if you +use a command letter it has to be 'm', because that is the built-in +trigger for the current command. + +Note that the digits used with different command triggers can be +different, so inscribing {@z1@m0} is perfectly legal. Use digit 1 +when zapping the rod, and 0 when referring to it during the casting +of a [mage] spell. + +You can also use this technique with scrolls. In that case you need to +use the inscription {@r<d>} since the item is being referred to while +processing the (r) Read scroll command. + +#####G---------------------------------------------------------------------- +#####G4.19 Disabling a built-in command +#####G---------------------------------------------------------------------- + +At times it may be useful to disable an underlying Angband command. +For example, a dangerous key may be too easy to press by accident. +The macro editor commands for removing macros and keymaps can't be +used in this situation. [[[[[BInstead bind the trigger key to the action] +[[[[[Bstring "\x00"]. This special 'command' takes no "energy" and won't +generate an error message. It truly does "nothing". This will work for +both macros and keymaps. If possible you should use a keymap instead +of a macro to disable the key. A keymap will catch occurrences of the +key both in macros and by typing, and will still allow you to use the +key when it isn't being interpreted as a command. + +If you use the "Query a macro/keymap" on a trigger key bound to this +action, it will report having found it, but no action string will be +printed. + +Another technique is to use the action "\e\e\e". This is used in some +of the standard pref files. + +[[[[[BIf you need to use the built-in command again you can use the '\' key] +[[[[[Bat any prompt to bypass its macro/keymap.] + +#####G---------------------------------------------------------------------- +#####G4.20 "Naming" an item (patch) +#####G---------------------------------------------------------------------- + +#####B= 'Fake artifact' name = +# "Name" an item +This isn't an actual command in the interface, but a flag character +that alters the way an item description is generated. This isn't part +of standard Angband. It's added by Tom Morton's 'fake artifact' patch. + +Example: inscription {#Thumper} will cause a Club (+8,+8) to display +as Club 'Thumper' (+8,+8) in your inventory and messages. + +~~~~~34 +#####R====================================================================== +#####R5. Common Questions +#####R====================================================================== + +#####G---------------------------------------------------------------------- +#####G5.1 Why can't I add a keymap for a function key? +#####G---------------------------------------------------------------------- + +Because keymaps can only be created for keys with system-independent +representations. This leaves out function keys, and several other +special keys. The "Create a keymap" command will continue waiting for +a keypress until you press a valid keymap trigger. You can, however, +create a macro for a function key. + +#####G---------------------------------------------------------------------- +#####G5.2 How can I automatically inscribe items when I pick them up? +#####G---------------------------------------------------------------------- + +You need to turn on the "Merge inscriptions when stacking" option. +If you are already carrying the same item with an inscription, a new +one will be added to the stack. Note that this WON'T merge discounts. +Although discounts display like inscriptions, they are different. + +1) = Options +2) 1 User interface options +3) "Merge inscriptions when stacking" (stack_force_notes) + move down to this line and change to "yes". + +#####G---------------------------------------------------------------------- +#####G5.3 Can I use macros inside other macros? +#####G---------------------------------------------------------------------- + +No. Macros don't expand macro triggers they contain in their actions, +in order to avoid recursion and other problems. However, keymap +substitution is done, so you can use keymaps to alter the behavior of +macros. This keymap expansion can be bypassed by preceding a trigger +with "\\" in the action. + +Keymaps don't expand macro or keymap triggers in their actions. + +Also see section *****macrofaq.txt*9["Can I create an infinite loop using a macro?"]. + +#####G---------------------------------------------------------------------- +#####G5.4 How do I find out what the standard commands are? +#####G---------------------------------------------------------------------- + +1) ? Angband help +2) 6 *****command.txt*0[Command Descriptions (command.txt)] + +Space - moves you down by a page +Minus - moves up by a page +2 - moves down by a line +8 - moves you up by a line + +Note that the original and roguelike command sets differ, and both are +different from the "underlying" command set. + +#####G---------------------------------------------------------------------- +#####G5.5 How can I tell if a key has a keymap/macro? +#####G---------------------------------------------------------------------- + +#####B= Query Macro/Keymap = + +In ToME this is easy: +1) @ Interact with macros +2) 3 Query a macro +OR 7 Query a keymap +3) (Press the trigger key to test) +4) Esc (Exit macro editor when done) + +It will report "Found no macro" or "Found a macro" at the top of the +screen. The action it is bound to will be displayed at the bottom of +the screen, under the "Current action..." line. You must test for both +macros and keymaps, and keymaps will only show for the current "mode", +i.e. original/roguelike. + +#####B= Notes = + +Note: on some machines, there are duplicate keys such as left and right +Shift keys. These will generally produce different key codes and can +have different macros and keymaps. + +Note: just because a key doesn't have a macro doesn't mean there isn't +a command that uses that key. + +#####G---------------------------------------------------------------------- +#####G5.6 How can I tell if a key has a built-in command bound to it? +#####G---------------------------------------------------------------------- + +Er ... try pressing the key. If there is a command bound to that key +it should usually generate a message of some kind. If there isn't one, +it may respond: "Type '?' for help.". Some keys may not generate any +message at all. Function keys are a good example. + +In ToME, the game will also generate "silly" error messages +which may not look like error messages at first. After a few repeated +key presses it uses the standard "Type '?' for help." message. + +Failing that, look in *****command.txt*0["command.txt"], which lists all +commands, and is up-to-date. There is no specific method for checking if +a key has a command bound to it from within the game. + +#####G---------------------------------------------------------------------- +#####G5.7 Can I inscribe multiple items with the same number? +#####G---------------------------------------------------------------------- + +You can, but it can cause problems if you aren't careful. Use the +command letter in the inscriptions to minimise problems. For example, +it is safe to inscribe both rods with {@z1} and a spell book with +{@m1} because the command letter allows distinguishing the two. + +When the game looks for an item to use with a command, it tries the +first one it finds that matches. If the command fails on that item, it +doesn't continue looking. The search for a matching item also doesn't +know how to only check the right kind of item, so if you have a Spellbook +inscribed {@1} and scrolls inscribed {@1} or {@r1}, when you read a +scroll it will find the spellbook first, even though it doesn't make +sense to read it, and the command will fail. + +#####G---------------------------------------------------------------------- +#####G5.8 How do I convert a macro to a keymap? +#####G---------------------------------------------------------------------- + +You can simply remove it and re-add it "by hand", but for more complex +actions there are faster, safer ways. + +#####B= Directly modifying the pref file = + +A macro with the following form in the pref file: + A:<action string> + P:<trigger>\r +Should be converted to the keymap form: + A:<action string> + C:0:<trigger> +The "\r" needs to be removed, and the 0 (zero) means standard keyset. +Use 1 for roguelike keyset. To make a keymap for both keysets: + A:<action string> + C:0:<trigger> + C:1:<trigger> + +#####G= Using the "Interact with Macros" editor = + +1) @ Interact with Macros +2) 3 Query a macro + <k> The trigger key for the macro + (its action string will now become the current action) +3) 5 Remove a macro + <k> The trigger key for the macro +4) 8 Create a keymap + <k> The trigger key for the keymap +5) (Hit Enter to accept the current action) + (Hit Esc to clear the message "Added a keymap") + +This technique can also be used to move or copy actions between macros +or keymaps of the same kind. [[[[[BAnd old macro MUST be removed from a key] +[[[[[Bbefore it can be used as the trigger key for a keymap], otherwise the +macro action will expand when you press the trigger key in the editor. +Converting a keymap to a macro doesn't require removing the keymap +first. + +Note that not all macros can be converted to keymaps. Keymaps don't do +macro or keymap expansion on their action strings, so macros that rely +on this will no longer work. Also, keymaps can only be bound to a +trigger key with a printable internal representation. For example, a +function key can't be a trigger for a keymap. +~~~~~9 +#####G---------------------------------------------------------------------- +#####G5.9 Can I create an infinite loop using a macro? +#####G---------------------------------------------------------------------- + +No. Well, okay, you can, but only if you work *really* hard at it and +abuse bugs in the macro handling code. This isn't something that will +happen by accident just by using the trigger key inside its action. + +You also can't create recursion. So don't worry about this. See the +section *****macrofaq.txt*10["Macros can contain their own trigger key"] for more info. +~~~~~4 +#####G---------------------------------------------------------------------- +#####G5.10 What just killed me? +#####G---------------------------------------------------------------------- + +When you are using lots of escapes and spaces in your macros to skip +over messages, you can miss important things happening. One of these +is dying. Usually when something goes wrong, you can just use the (^P) +Previous Messages command to see what happened. But if you died the +escapes can take you past the tombstone screen, your last chance to +examine the previous messages list. This also happens without macros. + +To examine your recall, load the savefile and start a new character. +You will then be able to use the message recall command to see the +last messages of that character's previous incarnation. + +~~~~~35 +#####R====================================================================== +#####R6. Common Problems +#####R====================================================================== + +#####G---------------------------------------------------------------------- +#####G6.1 My macro works all the time when I press its key! +#####G---------------------------------------------------------------------- + +Macros *do* work all the time. Every time you press a key, macro +expansion is done on it, and then keymap expansion. So if you use 'y' +as a trigger key for a macro, and then you try and answer a yes/no +prompt with 'y', instead you will get the macro's action string. + +The answer to this is to change your macro to a keymap. These can be +bound to keys which have a system-independent representation in the +game, which includes all keys that you would use when interacting with +the game interface. + +If you don't want to change it to a keymap, try changing the trigger +key to a "special" key, such as a function key. +~~~~~6 +#####G---------------------------------------------------------------------- +#####G6.2 My auto-firing macro shoots the wrong target! +#####G---------------------------------------------------------------------- + +Your macro is probably firing at the previous target. This will happen +if the option (*****option.txt*4[use_old_target]) is set. Then a macro will like "f1*t" +or "m1a*t" will execute as: + +f Fire +1 Ammo inscribed 1 + (it will now fire at the last [wrong] target) +* Choose a [new] target +t Accept first target + +If there are no valid targets, the (t) targeting command will centre +on your position. If you move, the target will still be your old +square. The first time you use the "f1*t" macro it will fire at that +square, even if there is now a valid target (monster) nearby. + +One fix is to turn off the (use_old_taret) option, since the action +doesn't require it. This is done with the (=) Set Options command. + +Another is to change the action to choose the target before it fires. +Example: "*tf1". + +[[[[[BNote:] just because you can "see" a monster doesn't mean you can target +it. The code used for vision (line of sight) and firing (projection) +is slightly different. So when shooting near corners or pillars it may +happen that you can "see" a monster but not target it. If your action +kills messages at the end, you could keep hitting your auto-fire macro +and the only thing happening would be a large pile of missiles quietly +accumulating underneath you. + +#####G---------------------------------------------------------------------- +#####G6.3 I used to have items inscribed, and now they aren't! +#####G---------------------------------------------------------------------- + +The game only knows about inscriptions that you are carrying. There is +no way to "store" them independently of a character's save file. So if +you lose all of an item that was inscribed, picking up another of that +kind won't automatically inscribe it. + +Normal inscriptions aren't affected by your player's "memory". + +Note that some items, when fully identified, could have their +descriptions grow so long that no inscription will show. In that case +you can use the (I) Identify command. It will display the full +description, even if nothing special is known about that item. + +#####G---------------------------------------------------------------------- +#####G6.4 I changed some macros in a pref file and nothing happened! +#####G---------------------------------------------------------------------- + +Settings loaded in later pref files will overwrite earlier ones. So if +you add macros for the same trigger key to files "<$CLASS>.prf" and +"<$PLAYER>.prf", the second one will get used because its file loads +later. This affects macros, keymaps, actions, attrs/colors, and other +info. See section *****macrofaq.txt*11["Pref lines summary"] for all the types of settings +that can be loaded. Also see section *****macrofaq.txt*7["Pref file loading order"]. + +#####G---------------------------------------------------------------------- +#####G6.5 It moves me when I try to use my bow/rod/wand! +#####G---------------------------------------------------------------------- + +Example: you type "f1" and it moves you in direction 1 (South West). +What is happening is that the 'f' key isn't being handled correctly. +It may be remapped to a bogus command, or one which doesn't take an +argument. So the 'f' command is skipped/dealt with, and the '1' key is +then treated as a direction. You can examine what is going on with the +'f' key using the (@) Interact with macros screen to check for any +macros or keymaps bound to that key. Use the appropriate "Remove ..." +command to restore the built-in Angband command. +~~~~~3 +#####G---------------------------------------------------------------------- +#####G6.6 My macro drops/takes off my main weapon! +#####G---------------------------------------------------------------------- + +This is probably caused by an auto-fire macro like "*tm1a" for magic +missile. If you hold down the trigger key to repeatedly use it, and +some game event (possibly caused by the macro) creates a message, then +the action will be interpreted as: +* (cancel message) +t Take off item +m (ignored as invalid) +1 (ignored as invalid) +a Item a (main weapon) + +If there is room in your inventory, it will be put there. If not, your +inventory will overflow and it will be dropped on the ground. If this +happens during combat this is a very good way to die. This is just +another good reason to have {!d!k!v} on your main weapon. See the +section *****macrofaq.txt*12["Prevent unwanted use of an item"]. + +This can be fixed by using the escape sequence "\e\e\e" before and +after the action string to cancel any pending messages or commands. +See the section *****macrofaq.txt*13["Clearing the command buffer"]. +~~~~~2 +#####G---------------------------------------------------------------------- +#####G6.7 My macro outputs "e - Floating Eye" on the message line! +#####G---------------------------------------------------------------------- + +It is wise to add an escape sequence "\e\e\e" to the beginning and end +of all macros for which this doesn't destroy useful information. See +section *****macrofaq.txt*13["Clearing the command buffer"] for more information on this. + +But many players play on flavors of unix, which uses '/' as the path +separator for files, and automatically type a forward slash when they +mean to type a backslash. So many actions in macros/keymaps in usenet +posts have the wrong type of slash. Angband "gurus" are perhaps more +vulnerable to this than novices. + +The game sees this as: +/ Identify a character +e Character to be identified +And outputs "e - Floating Eye" on the message line. + +If this sequence gets expanded when you are trying to select an item, +it will lead to different behaviors. +Example: +/ Switch between inventory and equipment +e Select item e. +Or: +/ Switch between inventory and equipment +e (ignored because invalid) Select item e. +/ Switch between inventory and equipment +e Select item e. + +~~~~~36 +#####R====================================================================== +#####R7. Inscriptions added by the game +#####R====================================================================== + +Some inscriptions are added by the game itself. These can overwrite +your inscriptions. There are also "fake" and "special" inscriptions, +which "look" like real inscriptions to the player. + +#####G---------------------------------------------------------------------- +#####G7.1 Fake inscriptions +#####G---------------------------------------------------------------------- + +These "fake" inscriptions are "covered up" by real inscriptions, but +will reappear if the real inscription is removed. + +"fake" inscriptions are unaffected by the uninscribe command (}). + +{cursed} - cursed item +{empty} - item out of charges +{tried} - a "flavored" item which the character + has used, but whose effects are unknown. +{N% off} - item bought on sale +{quest} - this item is a quest item. It may need to be taken to someone. + +#####G---------------------------------------------------------------------- +#####G7.2 Auto-inscriptions +#####G---------------------------------------------------------------------- + +These added when your character gets a "feeling" about an item. +In ToME these are "special" inscriptions, like "fake" inscriptions +above, which don't overwrite user inscriptions. They just hide user +inscriptions, which are still there. + +{terrible} - cursed or broken artifact +{broken} - broken item +{cursed} - cursed item +{uncursed} - previously cursed item +{average} +{good} - good (magical) item +{excellent} - ego item +{special} - unique item +{on sale} - displayed only in the store + +~~~~~37 +#####R====================================================================== +#####R8. Keys and commands +#####R====================================================================== + +This section gives short descriptions of keys and commands used in +actions and trigger key representations. They are only listed in this +section if they aren't fully described elsewhere in this FAQ. Not all +of these keys are actually for "commands". See the normal Angband help +for a fuller description of these commands. The commands and keysets +are documented in *****command.txt*0["command.txt"]. + +#####G---------------------------------------------------------------------- +#####G8.1 Keysets +#####G---------------------------------------------------------------------- + +ToME supports two "keysets", which are fully customisable sets of +keymaps. The "original" command set is close to the built-in commands, +with some additions for ease of use such as number keys moving you in +that direction. The "roguelike" command set allows easy movement on a +keyboard without a numeric keypad. As a consequence its letter keys +are almost completely "full". These used to be hard-coded by the game, +but are now fully customisable. The default keymaps are in "pref.prf". + +#####G---------------------------------------------------------------------- +#####G8.2 Item selection +#####G---------------------------------------------------------------------- + +(*) - gives list of choices +(-) - selects item on the floor +(/) - toggles between the inventory and equipment lists. + +(space) - shows list of choices. Pressing (space) again hides the list. +(lower) - selects the inventory item with that letter. +(upper) - selects the inventory item with that letter, and requires + confirmation. +(digit) - selects first item inscribed with "@#" or "@x#" where 'x' is + the command, and '#' is the digit. Only legal items are allowed. + +#####G---------------------------------------------------------------------- +#####G8.3 Directions and Movement +#####G---------------------------------------------------------------------- + +Original keyset directions +7 8 9 +4 5 6 +1 2 3 + +Roguelike keyset directions +y k u +h 5 l +b j n + +#####B= Underlying command keys = + +;<dir> - walk (with pickup) ++<dir> - alter +.<dir> - run + +Digits AREN'T built-in movement commands in ToME. They are actually +keymaps found in the standard pref file "pref.prf". The digits are +direction arguments to the (;) Walk command. + +#####G---------------------------------------------------------------------- +#####G8.4 Escape sequences +#####G---------------------------------------------------------------------- + +Many [non-printable] characters have a standard printable encoding +which uses an "escape" character to change the meaning of the +following character. The backslash character is used as in the C +language for many keys. The caret '^' is used for control keys. + +#####B= Escape sequences = +\b backspace +\e escape +\n newline +\r return +\s space +\t tab +\xNN hex ASCII char +\\ (literal) backslash +\^ (literal) caret + +#####B= Backslash = +In a macro, "\\" followed by a character uses the "underlying" command +for that character without translation. This is useful in macros to +avoid keymaps changing the behavior of the macro. In particular this +can be used to make macros which work for both original and roguelike +keysets. Keymaps don't have this problem. + +#####B= Newline and Return = +These two characters can be used interchangeably. + +#####B= ASCII chars = +Any ASCII character can be encoded in this way. So many keys will have +more than one representation. For example, [Enter] can be "\r", "^M", +and "\x09". The backslash representations are case sensitive, so "\t" +is [Tab], but "\T" will just be interpreted as "T". The hexadecimal +number must be exactly 2 digits. + +#####B= Escape and Space = +See section *****macrofaq.txt*13["Clearing the command buffer"] for their main uses. + +#####G---------------------------------------------------------------------- +#####G8.5 Repeats and Counts +#####G---------------------------------------------------------------------- + +#####B= Auto repeat = +Some commands will automatically repeat. These are: +(T) Tunnel +(B) Bash +(D) Disarm +(o) Open +(c) Close +(+) Alter + +#####B= Number keys = + +0 - starts a repeat count. Some commands take a repeat count argument. +They can be entered as "0<count><cmmd>". If the command is movement, +it can (must) be preceded by space(s) to separate the direction +(command) number from the count number. +~~~~~1 +#####G---------------------------------------------------------------------- +#####G8.6 Messages and Questions +#####G---------------------------------------------------------------------- + +#####B= Yes/No queries = +Yes/No questions can be answered with 'y', 'n', or Esc. These are not +case sensitive. Only 'y' or 'Y' will respond Yes. 'n', 'N', and Esc +are No. If the option (quick_messages) is on, any other keypress is +also No. When the option is off, it will keep waiting for a valid key. + +#####B= "-more-" message prompts = +These may be cleared by Esc(\e), Space(\s), Enter(\r), or Newline(\n). +If the (quick_messages) option is on, they can be cleared by any key. + +#####G---------------------------------------------------------------------- +#####G8.7 Special keys +#####G---------------------------------------------------------------------- + +#####B= Function keys = +Function keys are free for reassignment, but only as macros. [[[[[BFunction] +[[[[[Bkeys can be modified by Alt, Ctrl, Shift like other keys.] + +#####B= Alt keys = +Alt-modified keys are generally free for reassignment as either macros +or keymaps. + +#####B= Control keys = +Control keys can be entered in as "^x" where 'x' is the key. Note +that the case of 'x' is unimportant. This also allows typing control +keys which would be intercepted by the operating system, such as ^C. +You must type the caret '^' and the following key separately. Note +that some have special meanings, such as ^M for Return, and ^H for +backspace. Some also have special Operating System meanings, such as +"^Z" in un*x, and "^C" in DOS. Control keys can be trigger keys for +both macros and keymaps. + +#####B= Interrupting the game = +(^C) This will kill your character and quit the game, after verifying. + +#####G---------------------------------------------------------------------- +#####G8.8 Keys used in inscriptions +#####G---------------------------------------------------------------------- + +#####B= Confirm command = +^ Confirm the following command. +This isn't an actual command, but a character with a special meaning +inside command strings. {^*} will confirm all actions for the item. + +#####B{=g} +This inscription will cause an item of the same kind to be picked up +from the floor without prompting. + +~~~~~38 +#####R====================================================================== +#####R9. Pref files +#####R====================================================================== + +All pref files are loaded from and saved to folder "\lib\user". The +folder "\lib\pref" is unused at this time! The location and name of +this folder can be configured. + +Warning: the directory "\lib\pref" is unused by the game. Pref files +moved there will never get used (unless the user has redirected the +folder locations). + +Integers can be in hex "0x10", decimal "16", or octal "020" formats. +These are converted using the C library fn strtol(), and are case +insensitive. + +Decimal numbers start with '1'-'9'. +Octal numbers must start with '0' (zero). +Hex numbers start with '0x' or '0X'. + +#####G---------------------------------------------------------------------- +#####G9.1 Standard Pref files +#####G---------------------------------------------------------------------- + +Below "***" stands for the 3-letter system abbreviations, such as +"acn", "mac", "win", "x11", ... + +"font.prf" +Includes "font-***.prf" files. +This file defines special attr/char mappings for "text" mode. + +"graf.prf" +Includes "graf-***.prf" files. +This file defines special attr/char mappings for "graphics" mode. + +"pref.prf" +Includes "pref-***.prf" files. +This file defines "default" actions of various kinds. This includes +mapping the original and roguelike keysets to the underlying keyset. + +"user.prf" +Includes "user-***.prf" files. +This file defines "override" actions of various kinds. It includes the +pref files based on system, race, and class. + +"xtra-***.prf" +This file defines special attr/char mappings for "graphics" mode. +Currently this just maps the player icon based on race and class. +"new" refers to Adam Bolt's tiles. + +[[[[[vWarning:] you shouldn't edit the base pref files without a good reason, +and understanding what you are doing. Breaking these files can make +your game unusable. They are, however, the place to make changes that +should affect all users. +~~~~~7 +#####G---------------------------------------------------------------------- +#####G9.2 Pref file loading order +#####G---------------------------------------------------------------------- + +This loading order follows from the order of includes in "pref.prf". +Files which are "hard-coded" in the source are preceded with an index. +The rest are included by the other files. Files which come later will +overwrite settings from earlier files. + +(1) "pref.prf" + "message.prf" + "pref-***.prf" + +(2) "graf.prf" + "font-xxx.prf" + "graf-***.prf" + +(3) "font.prf" + "font-xxx.prf" + "font-***.prf" + +(4) "user.prf" + "user-***.prf" + "<$RACE>.prf" + "<$CLASS>.prf" + +(5) "<$PLAYER>.prf" + +(6) ".angband.prf" + + += $RACE = +Can be one of any of the races in ToME. + += $CLASS = +Can be one of any of the classes in ToME. + += $PLAYER = +The name of the current player being loaded or born. See section +*****macrofaq.txt*15["Automatically loading pref files"] for more information. + +#####B= Specific pref files = +#####B----------------------------------- + +"user-mac.prf" +This is the only user pref file with example macros that ships with +ToME. A good set of examples. + +"pref-win.prf" +This is the same as (missing) "pref-dos.prf" and "pref-ibm.prf". + +"colours.prf" +Amiga only. Contains Amiga palette. + +".angband.prf" +Only on multi-user systems. This doesn't ship with the source. This +file must be located in the directory contained in environ variable +"HOME". +~~~~~11 +#####G---------------------------------------------------------------------- +#####G9.3 Pref lines summary +#####G---------------------------------------------------------------------- + +Comment lines start with a '#' and extend to end of line. + +Note: integer values can be specified as decimal, as hexadecimal by +preceding with an "x", or as octal by using a leading "0" (zero). + +E:<tv>:<a> - attr/char values for inventory objects by index +F:<num>:<a>:<c> - attr/char values for features by index +K:<num>:<a>:<c> - attr/char values for objects by index +R:<num>:<a>:<c> - attr/char values for monsters by index +S:<num>:<a>:<c> - attr/char values for special things by index + +A:<str> - action line + An action line should be followed by a keymap trigger "C:" line + or a macro trigger "P:" line. There can be intervening comments + and lines. The same action will be [re]used by all keymap and + command lines which follow it until there is another action line. +P:<str> - macro line + <str> a macro encoding of a keypress. (system dependent) +C:<mode>:<str> - keymap line + <mode> 0 = "original, 1 = "roguelike". + <str> logical keypress, including backslash codes such as "\e" and + control codes such as "^K". (system independent) + Note that there are 2 independent sets of keymaps now. Changing a + keymap in one doesn't affect the other. + +V:<num>:<kv>:<rv>:<gv>:<bv> - specify visual information + <num> is the color index (0-255, only 0-15 used) + <kv> black (?) value -- unused + <rv> red value (0-255) + <gv> green value (0-255) + <bv> blue value (0-255) +W:<win>:<flag>:<value> - turn a window flag on/off. + <win> window number (1-7) + <flag> (0-31) + <value> 0 = off, 1 = on + +X:<str> - turn option off +Y:<str> - turn option on + <str> the name of an option in option_text[]. + These are the names displayed in the options screen (=). + +?: - conditional expression +%: - include another pref file + +#####G---------------------------------------------------------------------- +#####G9.4 Option lines "X:" and "Y:" +#####G---------------------------------------------------------------------- + +Options and their descriptions are listed in help file *****option.txt*0["option.txt"]. +These options are set within the game using the (=) Options command, +and the option names are the ones displayed within parentheses in the +options screen. + +#####B= Common options = +rogue_like_commands +use_old_target +always_pickup +depth_in_feet +alert_hitpoint +auto_haggle +auto_scum + +#####G---------------------------------------------------------------------- +#####G9.5 Conditional expression lines "?:" +#####G---------------------------------------------------------------------- + +expressions are lisp-like prefix notation. +names (class, race, ...) aren't placed in quotes. +AND - logical AND +IOR - inclusive OR +EQU - (string) equals +NOT - logical negation +LEQ - (string) less than or equal to +GEQ - (string) greater than or equal to +[,] - group expressions +$CLASS - current class +$GRAF - 3-letter graphics abbr in "graf-***.prf" (old, new) +$PLAYER - current player name +$RACE - current race +$SYS - 3-letter system abbr in "pref-***.prf" (ami, mac, win,...) + +0 - false +1 - true (can't just be non-zero) + +If the conditional expression is false all pref file commands +encountered until the next conditional pref line are skipped. + +This isn't an actual command. It only works in pref files. + +The variables $CLASS, $GRAF, $PLAYER, $RACE, $PLAYER, $SYS and the +string values they take on are case sensitive. The values also can't +contain spaces. These constraints on the values hold when they are +used in a pref file, but might not when used as pref filenames. + +This can be "turned back on" using the pref line "?:1", which is +generally the last line in a file which contains conditional macros, +to make sure that any files loaded after it don't get ignored as well. + +#####G---------------------------------------------------------------------- +#####G9.6 Macro trigger lines "P:" +#####G---------------------------------------------------------------------- + +All "special" keys are translated by "main-***.c" into encoded "macro +triggers". These macro triggers have the encoded form "^_MMMxSS\r", +where the "modifier" flags are stored in "MMM", and the two digit +hexadecimal scan code of the keypress is stored in "SS". See source +file "main-ibm.c" and others for more info. Note that because these +scan codes are system-dependent, macro trigger encodings are as well. +Keymaps are used for system independent mapping of triggers to actions. + +#####BModifier flags + +A - Alt +C - Control +S - Shift +O - Option key (Mac) + +#####BIBM Scan codes + +x47 - keypad 7 +x48 - keypad 8 +x49 - keypad 9 +x4A - keypad - +x4B - keypad 4 +x4C - keypad 5 +x4D - keypad 6 +x4E - keypad + +x4F - keypad 1 +x50 - keypad 2 +x51 - keypad 3 +x52 - keypad Ins / . +x53 - keypad Del / Enter +x45 - Pause + +Others can be found using the "Query a macro" feature. + +Note that scan codes can't be assumed to be "in order", even for keys +like function keys which "logically" should be! + +Note that you can't always just add a modifier to a known scan code +because that combination might not be recognised by the hardware or +the translation code in "main-***.c". + +Example: a Windows system will recognise function key F1, Shift-F1, +and Ctrl-F1, but not Ctrl-Shift-F1. Similarly Pause and Alt-Pause are +recognised, but not Ctrl-Pause, and Shift-Pause gives the same +encoding as Pause alone. + +#####G---------------------------------------------------------------------- +#####G9.7 Saving to a pref file +#####G---------------------------------------------------------------------- + +Commands "Append macros to file" and "Append keymaps to file" don't +erase the previous macros or keymaps. Instead they are appended. Note +that this can produce *large* files after a while. Newer versions +append to "<$PLAYER>.prf" by default, whereas older versions appended +to "user.prf". The appended sections are preceded by headers of the +form "Automatic macro/keymap dump". Using a distinctive comment line +such as ###... after your entries can make editing the appended ones +easier. + +[[[[[BNote: macros and keymaps aren't saved in the character file, so they] +[[[[[Bmust be saved separately. All macros and keymaps entered by the user] +[[[[[Bare lost when Angband terminates.] + +Note: keeping macros in the <$PLAYER>.prf files allows several users +to share the same installation without interfering with each other. +You can easily reuse or share preferences by moving them into a pref +file "<my-name>.prf" and using the pref line "%:<my-name>.prf" to +include them in "user.prf" for single user installations, or +<$PLAYER>.prf for multi-user installations. + +#####G---------------------------------------------------------------------- +#####G9.8 Editing pref files +#####G---------------------------------------------------------------------- + +This is still most easily done in a text editor. + +~~~~~39 +#####R====================================================================== +#####R10. Macro editing commands +#####R====================================================================== + +#####G---------------------------------------------------------------------- +#####G10.1 (") Enter a User Pref Command +#####G---------------------------------------------------------------------- + +This allows entering a single pref line. +Example: "X:auto_scum" turns auto-scum off. + +Example "A:<str>" sets the current action string. If you open the +"Interact with macros" screen this action will be the default used. +Then using the (") command again with "P:<key>" will create a macro +for the action <str> previously entered. + +Not all pref commands can be used here, or are meaningful. +The "pseudo" pref commands (?), (%) cannot be used here. + +See section *****macrofaq.txt*20["Advanced macro techniques"] for ways to [ab]use this. + +#####G---------------------------------------------------------------------- +#####G10.2 (@) Interact with macros +#####G---------------------------------------------------------------------- + +#####B= Vanilla command set = (2.8.3 - 2.9.1) +#####B----------------------------------- +Load a user pref file +Append macros to a file +Query a macro action +Create a macro +Remove a macro +Append keymaps to a file +Query a keymap +Create a keymap +Remove a keymap +Enter a new action + +#####B= Load a user pref file = +#####B----------------------------------- +Loads a user pref file from "lib\user". Defaults to the name of the +current character. Macros/keymaps loaded will replace existing ones. + +#####B= Append macros to a file = +#####B----------------------------------- +Macros are dumped in macro list order. Newer ones are at the end. +Macros are *appended* to the file. The old one isn't overwritten. This +prevents you from accidentally wiping out your old pref file. However, +the file can grow very long without your noticing it. Placing a line +of ###'s at the end of your macros can help sort out what is what. +Macros are labeled with comment "# Macro 'NNN' ". These numbers are the +internal macro list numbers, and have no relation to key scan codes. +The filename must end in ".prf". It will save correctly without this +extension, or with a different one, but if you save as "<$NAME>" +instead of "<$NAME>.prf", it won't be automatically loaded when you +load the character with that name. + +#####B= Query a macro = +#####B----------------------------------- +Press the trigger key to test at the prompt. +This will show "Found a macro" on the message line if it found one, +and the line "Trigger: <trigger>". This will show "Found no macro" +on the message line if it didn't find a macro. Some keys such as +function keys won't be recognised by the prompt. It will wait until +you hit a key it recognises. + +This command doesn't alter any settings. It will return to the main +menu after you hit any key it recognises. + +#####B= Create a macro = +#####B----------------------------------- +After choosing this command, press the trigger key for the macro. +The internal form will be shown after the "Trigger: " prompt. +Note that some keys may not be recognised for remapping, such as the +new Windows keys, as well as modifier keys such as Alt, Control, Shift +pressed by themselves. In this case it will continue to wait for a +valid trigger key. + +The current action (if any) will be shown *below* the "Trigger: " +prompt line. On the prompt line ("Action: ") will be shown the last +macro sequence entered. This is the action in the "action buffer". +This isn't necessarily the macro sequence currently bound to this key. +This is the action that will be bound to the current trigger key if +you hit Enter. + +You may type in an action string to replace the one after the prompt. +Hit Enter when you are finished. + +For ToME you can quit the command assignment by hitting +Esc. The new action entered won't be assigned, and the previous one +will remain unaltered. + +#####B= Remove a macro = +#####B----------------------------------- +Removes the macro from the trigger key by creating an identity macro +on that key for itself. So the macro isn't completely removed, just +overwritten. The new identity macro will be saved when the macros are +appended to a file. This is different from the "Remove a keymap" +command, which completely removes the keymap. + +#####B---------------------------------------------------------------------- +The following "keymap" commands only apply to the current "mode" +(original/roguelike). Keymaps for the other mode will be unaffected. +Because keymaps can only be bound to trigger keys which have a system +independent representation, some key presses won't be recognised by +these editing commands. They will instead wait until you press a valid +trigger key. +#####B---------------------------------------------------------------------- + +#####B= Append keymaps to a file = +#####B----------------------------------- +Works just like "Append macros to a file". These are appended after a +header comment "# Automatic keymap dump". + +#####B= Query a keymap = +#####B----------------------------------- +Works just like "Query a macro". This will show "Found a keymap" on +the message line if it found one, and will display "Keypress: <map>". +This will show "Found no keymap" on the message line if it didn't +find a keymap. This command doesn't alter any settings. It will return +to the main menu after you hit any key it recognises. + +#####B= Create a keymap = +#####B----------------------------------- +Works just like the "Create a macro" command. Keymaps can only be +assigned to keys which have a system independent representation. Note +that creating a keymap will cause the behavior of any macro whose +action string contains that key to change. + +#####B= Remove a keymap = +#####B----------------------------------- +Removes the keymap completely from the trigger key. If the key had a +built-in command it can now be used again. Note that removing a keymap +will cause the behavior of any macro whose action string contained +that key to change. This behaves differently from the "Remove a macro" +command, which creates an identity macro. + +If the original "command" was itself a keymap, removing a user-entered +keymap won't restore it. Example: the key (n) is bound to the built-in +command "Repeat last action" in file "pref.prf" via a keymap. If you +add a keymap for (n) and then remove it, the "Repeat last command" +functionality won't be restored. You will have to add it back by hand, +or reload a pref file that contains that stored keymap. [[[[[BIn particular] +[[[[[Balmost all roguelike commands are now implemented as keymaps.] + +#####B= Enter a new action = +#####B----------------------------------- +Allows entering a new action. Actions are entered into a static buffer +which is shared by both macros and keymaps. The action string entered +will become the default action for creating a keymap or action, and +will only change when a keymap or macro is created with a different +action string, or when one is queried. Note that the same action can +be bound to multiple trigger keys by hitting Enter when using the +commands to create a keymap/macro. + +~~~~~20 +#####R====================================================================== +#####R11. Advanced Macro Techniques +#####R====================================================================== + +This section outlines advanced techniques not really required for game +play. But macros become addictive after a while ... + +Action strings in this section are enclosed in braces {} because many +use a double quote (") inside the action string. These are not +inscriptions. + +#####G---------------------------------------------------------------------- +#####G11.1 Set current action using (@) command in an action +#####G---------------------------------------------------------------------- + +{"@0<str>\r\e} +@ - Interact with macros +0 - Enter a new action +<str>- (action string) +\r - Enter the action +\e - Exit the macro editor + +This will work when bound to a macro. + +#####G---------------------------------------------------------------------- +#####G11.2 Set current action using (") command in an action +#####G---------------------------------------------------------------------- + +{"A:<action>\r} - sets the current action. +" - Enter pref line +A: - Action line +<str>- (action string) +\r - Enter the action + +This works in either a macro or keymap. + +#####G---------------------------------------------------------------------- +#####G11.3 Create a new keymap using (") command in an action +#####G---------------------------------------------------------------------- + +{"A:<act>\r"C:0:<key>\r} +Here <act> can't contain an '\r' or '\e'. + +Example {"A:z0\r"C:0:J\r} binds action "z0" to (standard) keymap 'J'. + +#####G---------------------------------------------------------------------- +#####G11.4 Create a new macro using (") command in an action +#####G---------------------------------------------------------------------- + +{"A:<act>\r"P:<key>\r} +Here <act> can't contain an '\r' or '\e'. +Here <key> is a standard key. (not a "special" one like F1, \b, or ^A) + +Example +{"A:<action1>\r"P:j\r} binds action <action1> to trigger 'j'. +{"A:<action2>\r"P:j\r} binds action <action2> to trigger 'j'. +If we bind these 2 macros to different trigger keys, the action that +is on key (j) can be swapped back and forth. + +#####G---------------------------------------------------------------------- +#####G11.5 Turning an option on/off in an action +#####G---------------------------------------------------------------------- + +Turn an option on: +{"Y:<option_name>\r} + +Turn an option of: +{"Y:<option_name>\r} + +Example: Turn (quick_messages) on, do an action, and turn it back off: +{"Y:quick_messages\r<action>"X:quick_messages\r} + +This will work in either a macro or keymap. <option_name> is the name +of the option as it appears in the option editor accessed through the +(=) command. These are also listed in the help file *****option.txt*0["option.txt"]. Note +that option names contain underscores instead of spaces. + +#####G---------------------------------------------------------------------- +#####G11.6 Inscribe/Uninscribe an item in an action +#####G---------------------------------------------------------------------- + +(These action strings are enclosed in double quotes) + +Inscribe an item: +"{<item>\s<inscr>\r" + +Uninscribe an item: +"}<item>\r" + +<item> must be the inventory letter of the item, possibly preceded by +a '/' to switch to the equipment list. You can't use digit labels for +items with inscriptions that contain the command triggers '{' or '}', +but you can use "@<digit>". + +This will work in either a macro or keymap. + +~~~~~41 +#####R====================================================================== +#####R12. Problems +#####R====================================================================== + +#####G---------------------------------------------------------------------- +#####G12.1 Keys to avoid remapping +#####G---------------------------------------------------------------------- + +These don't really *need* to be avoided, but all carry dangers of one +kind or another. You should think through potential problems before +deciding to use them. You have been warned. + +#####B= Navigation keys = +Enter, Esc, Backspace, ... +These aren't a good choice unless you *really* need them. If you do it +is far better to use keymaps. If you bind a macro to the Enter key, +you will lose the ability to enter line-based commands like Inscribe. + +#####B= Commands generated internally = +(_) Enter store +This command is generated internally by the game when the player moves +onto the door of a store. In some versions, if this key has a keymap +bound to it, that will fire when you try to enter a store. + +#####B= Keys with important Operating System meanings = +^Z (un*x) Suspends the game and returns to the command shell. This + is an operating system command, not an Angband command. + Command "fg" returns to Angband. +^\, ^D, ^S + These are keys that shouldn't be bound to macros or have their + behavior altered. + +#####B= Keys with dangerous ToME meanings = +(Q) Quit (commit suicide), (k) destroy item, (^A) Enter Debug mode... +Using these as triggers is dangerous in case, for some reason, you +wind up in a situation where the macro hasn't loaded or is disabled. +You also don't want to get into a habit of typing these too fast. + +#####B= Selection keys = +(e) Equipment, (i) Inventory, (-) Floor item, (/) Switch inventory +lists. You should avoid binding these as macro triggers, to prevent +making inventory and choice management next to impossible. But even as +keymaps they hold some dangers. +Example: you bind keymap on '-' to destroy item on the floor. Now if +you try to do an action on a floor item, and it fails (such as using +rod to identify), then the '-' can be taken from the input stream and +used as a keymap, which would destroy the item you tried to identify. + +#####B= Response keys = +(y) yes, (n) no, (Esc) cancel, (Space) skip message,... +Binding macros to these is a [[[[[vVery Bad Idea.] Macro expansion will then +be done when you answer a question like "Are you sure you want to quit +the game without saving?". The expanded macro action string will be +used as the input, and may not lead to the answer you were trying for. +Keymaps don't have this problem. As a rule you should never use a +macro instead of a keymap unless necessary. + +#####G---------------------------------------------------------------------- +#####G12.2 Num lock +#####G---------------------------------------------------------------------- + +Whether/not NumLock is on can make a difference for some macros. +For example, if NumLock is on under X11 the 'X' macro won't work. + +#####G---------------------------------------------------------------------- +#####G12.3 Recovering +#####G---------------------------------------------------------------------- + +Restarting ToME clears all macros entered during the last session. + +You can use "Load a pref file" in the "Interact with macros" screen to +reload a good set of prefs, overwriting bad ones being used. This will +not "erase" a macro/keymap which doesn't have a corresponding saved +one in the pref file. So if you add a macro/keymap to a trigger key +which didn't have anything bound to it, reloading the pref file won't +restore the key to its original state. + +If you still have problems, restore or edit any modified *.prf files +that might be loaded. + +Try saving your macros, and examine them to see what went wrong. + +[[[[[BYou can use the backspace '\' key at the command prompt to use the] +[[[[[Boriginal "underlying" command bound to that key. For example, if you] +[[[[[Bbound the key '@' to a macro, you wouldn't be able to enter the macro] +[[[[[Beditor to rebind it to itself.] Pressing '\' first, then '@' causes the +command handler to use the built-in command, which allows you to enter +the command editor. Note: when you use the backspace inside an action +string, you have to double it as "\\". Do not use just a single back- +slash, or it will be ignored, and possibly alter the meaning of the +character that follows it. + +You can remove a macro/keymap from an essential key (such as the Esc +key). Use the (@) "Interact with macros" command to access the remove +commands. + +#####G---------------------------------------------------------------------- +#####G12.4 Unrecognised keys +#####G---------------------------------------------------------------------- + +#####B= Un*x = + +Function keys may not be recognised on some Un*x systems. + +#####B= PC/Dos/Windows = +Doesn't recognise the WINDOWS key (start menu) or the APPLICATION key +(context menu). + +On some systems, doesn't recognise modifier keys (Alt, Ctrl, Shift) on +keypad keys when NumLock is on. + +See special_key_list[] in "main-win.c" for list of "special" keys that +are recognised. + +#####G---------------------------------------------------------------------- +#####G12.5 Nonexistent commands +#####G---------------------------------------------------------------------- + +Macros and keymaps can only be bound to keypresses. The game state +changing isn't a keypress, so you can't trigger an action when you +become hungry, blind, confused, slowed, pseudo-id an item, pick up an +item, gain a level, have a rod recharge, or any other event that isn't +directly triggered by a keypress. + +"Attacking" also isn't a command, but you can use commands (+) Alter +grid, (;) Walk, and (.) Run. + +So you don't really _attack_ Morgoth, you just _alter_ him. First he's +alive, then he's not. :) + +#####G---------------------------------------------------------------------- +#####G12.6 File permissions +#####G---------------------------------------------------------------------- + +If you lack write permission to the pref file currently loaded by the +game, try saving to a file with a new name. The macros can be copied +over "by hand" later. + +~~~~~42 +#####R====================================================================== +#####R13. Miscellaneous +#####R====================================================================== + +#####G---------------------------------------------------------------------- +#####G13.1 References +#####G---------------------------------------------------------------------- + +*****command.txt*0["COMMAND.TXT"] +- lists standard and roguelike keys and commands. full descriptions. +- long description of command behavior. +- intro to macros and user pref files. + +*****dungeon.txt*8["DUNGEON.TXT"] +- look under "Objects Found in the Dungeon". + +*****option.txt*0["OPTION.TXT"] +- list of options and their descriptions. + +"INSCRIPTIONS.HTML" +- short intro by Julian Lighton. Available from +"http://www.fragment.com/~jl8e/angband/inscriptions.html". + +#####G---------------------------------------------------------------------- +#####G13.2 Contributors +#####G---------------------------------------------------------------------- + +This FAQ was largely compiled from newsgroup postings to "r.g.r.a". +So thanks to the generous contributors to the newsgroup! Email +addresses have been removed to foil spam-bots. + +Ben Harrison -- maintainer: Angband 2.7.1 - 2.8.5, =Ben= in source. +Robert Ruehlman -- maintainer: Angband 2.9.0 - present. +DarkGod -- maintainer: PernAngband 2.9.9a - present + +Scott Bigham, DamonShawX, Jonathan Ellis, George W. Harris, Roger +Hoyle, Graham S. Johnson, Chris Kern, Matthias Kurzke, Steve Lamb, +Julian Lighton, Art Mruczek, Daniel Nash, Timo Pietilä, Jack Wise, +Greg Wooledge, and others. + +#####G---------------------------------------------------------------------- +#####G13.3 Legalese +#####G---------------------------------------------------------------------- + +Copyright 2000 Jim Lyon and others. Redistribution of unaltered copies +of this document is permitted without restriction. Distribution of +altered copies is permitted without restriction as long as the +alteration does not significantly alter the content. (For example, +translation and conversion to another format is permitted.) +Distribution of all other altered copies is permitted as long as credit +for previous authors is maintained, the contact information is +replaced with that of the alterer, and redistribution is not further +restricted. + +Edited for PernAngband V5.x.x by Dawnmist with permission from Jim Lyon +August 2001. All comments to angband@dawnmist.8m.com diff --git a/lib/mods/theme/help/magic.hlp b/lib/mods/theme/help/magic.hlp new file mode 100644 index 00000000..382451c3 --- /dev/null +++ b/lib/mods/theme/help/magic.hlp @@ -0,0 +1,41 @@ +|||||oy +~~~~~01|Magic|Index +~~~~~02|Help|Magic +#####RWelcome to the ToME Magic Help System. +#####R============================================= + +Please choose one of the following help files: + +General Info + + *****/amagic.txt*0[(a) The ToME magic system] + *****/bmagic.txt*02[(b) Wands and Staves] + +Magic schools + + *****/cm_air.txt*0[(c) The Air School] + *****/dm_convey.txt*0[(d) The Conveyance School] + *****/em_demono.txt*0[(e) The Demonology School] + *****/fm_divin.txt*0[(f) The Divination School] + *****/gm_earth.txt*0[(g) The Earth School] + *****/hm_fire.txt*0[(h) The Fire School] + *****/im_geoman.txt*0[(i) The Geomancy School] + *****/jm_mana.txt*0[(j) The Mana School] + *****/km_meta.txt*0[(k) The Meta School] + *****/lm_mind.txt*0[(l) The Mind School] + *****/mm_nature.txt*0[(m) The Nature School] + *****/nm_necrom.txt*0[(n) The Necromancy School] + *****/om_tempo.txt*0[(o) The Temporal School] + *****/pm_udun.txt*0[(p) The Udun School] + *****/qm_water.txt*0[(q) The Water School] + +Other powers accessed by the 'm' menu + + *****/rm_mimic.txt*0[(r) Mimicry Powers] + *****/sm_mindcr.txt*0[(s) Mindcrafting Powers] + *****/tm_music.txt*0[(t) Musical Songs] + *****/um_symbio.txt*0[(u) Symbiotic Powers] + *****/vm_thaum.txt*0[(v) Thaumaturgical Spells] + + *****/zhelp.hlp*0[(z) Main Help menu] +
\ No newline at end of file diff --git a/lib/mods/theme/help/magic.txt b/lib/mods/theme/help/magic.txt new file mode 100644 index 00000000..93486f0b --- /dev/null +++ b/lib/mods/theme/help/magic.txt @@ -0,0 +1,143 @@ +|||||oy +~~~~~03|Magic +#####R === ToME Magic system === + +*****magic.txt*02[Wands and Staves] + +For the basics of how to use skills, please see *****skills.txt*0[Using Skills]. + +In ToME you have a basic *****skills.txt*21[Magic] skill. This skill is one of the most +important ones for a spellcaster, since it is responsible for how much mana you +have. You can never have too much of it. If you like magical devices, the +Magical Device skill is also important, since it controls the Magical +Device ability of your character. This ability again dictates the fail rates +of use of wands/rods/staffs and activation of random-artifacts/artifacts, and +it will also increase the power of these items. +~~~~~01|Magic|Schools +ToME uses skills to define the various schools of magic. There are 11 primary +schools: + *****m_mana.txt*0[Mana] *****m_fire.txt*0[Fire] *****m_water.txt*0[Water] + *****m_air.txt*0[Air] *****m_earth.txt*0[Earth] *****m_meta.txt*0[Meta] + *****m_convey.txt*0[Conveyance] *****m_divin.txt*0[Divination] *****m_tempo.txt*0[Temporal] + *****m_mind.txt*0[Mind] *****m_nature.txt*0[Nature] + +Other magical skills, generally being used primarily by characters of a +specific class, are: + *****m_demono.txt*0[Demonology] *****m_necrom.txt*0[Necromancy] *****skills.txt*36[Runecraft] + *****m_thaum.txt*0[Thaumaturgy] *****skills.txt*49[Alchemy] *****m_geoman.txt*0[Geomancy] + +The *****m_demono.txt*0[Demonology] skill is primarily used by *****c_demono.txt*0[Demonologists] for their special +spells, whereas the *****m_necrom.txt*0[Necromancy] skill is used by *****c_necro.txt*0[Necromancers] for their own set +of special spells. +The same goes for *****skills.txt*36[Runecraft], which is used by *****c_runecr.txt*0[Runecrafters] to allow use of more +difficult runes or rune-combinations. *****m_thaum.txt*0[Thaumaturgy] gives you randomly chosen +attack spells, and as such each game with it will be different. *****c_geoman.txt*0[Geomancers] +harness the powers of the elements using *****m_geoman.txt*0[Geomancy]. Lastly we have +*****skills.txt*49[Alchemy], which is used by *****c_alchem.txt*0[Alchemists]. + +In addition to the schools of magic, you can get access to special sets of +spells if you worship a God. There are currently four good Gods, +*****g_eru.txt*0[Eru Iluvatar], *****g_manwe.txt*0[Manwe Sulimo], *****g_yavann.txt*0[Yavanna Kementari] and *****g_tulkas.txt*0[Tulkas]. There is also an evil +god, *****g_melkor.txt*0[Melkor]. Each of them gives you access to different types of spells. + +*****c_pr_drk.txt*0[Worshippers of Melkor] also have access to the special *****m_udun.txt*0[Udun] school of magic, +whereas other *****c_priest.txt*0[Priests] and *****c_mindcr.txt*0[Mindcrafters] can use *****m_mindcr.txt*0[Mindcrafting Powers]. + +*****c_symbia.txt*0[Symbiants] have access to their own special brand of *****m_symbio.txt*0[magic powers], and *****c_bard.txt*0[Bards] have +access to *****m_music.txt*0[Songs], which affect creatures in ways that can appear to be magical. + +The 11 different primary schools give you access to different spells of +variable usefulness. The way they work is that adding skill points to a +specific school will enable you to get higher level spells for that specific +school. By level requirements for a specific spell you could actually say skill +requirement, since they correlate exactly. Let's take a simple example: +If you have the *****m_mana.txt*0[Mana] school skill at level 24.000, it means you can use any +spell in the mana school up to and including those requiring level 24. [[[[[BThere are] +[[[[[Balso some spells requiring a certain skill level in two schools, and there is a] +[[[[[Bpossibility of spells requiring three or more. For this kind of spells the ] +[[[[[Bspell level is determined by taking an average of the necessary skills. ] +When calculating spell level for spells which require more than one school, +sorcery (or god-granted access) can be used in place of the primary schools in +the normal way. Once the average has been calculated, any bonus from the +spell-power skill can also be applied as normal. If one of the schools required +is the Udun school, then the appropriate bonus from character level will be +applied. Lastly, if you look at a spell, and the spell level reads -2 or some +other negative value while it's also grayed out, that means you need to +increase the corresponding school's skill level by 3, since only 2 will have +it end up on spell level 0, where it still is unusable. If it reads n/a, you +currently have no skill points in that school. + +Another thing that should be explained about the skills and schools of magic +right now, is that the skill doesn't stop being useful only for gaining spells. +The higher the skill level, the higher the spell level will be, and the more +powerful your spells will be. For instance, say you have the *****m_mana.txt*0[Mana] skill at +level 24. Now, the Manathrust spell is one of the spells for that school +that only requires skill level 1, but since you've got skill at level 24, the +power of the spell is increased as well. For comparison, a level 1 +Manathrust costs 1 mana and does 4d2 damage, while at level 24 it costs 12 +mana and does a whopping 27d10 damage. + +The *****skills.txt*23[Sorcery] skill is a nice skill, since it gives you +access to all the 11 primary schools of magic, just as if you'd spent an equal +amount of skill points in all the skills. It's available to any mage character, +but only a *****c_sorcer.txt*0[Sorceror] will be able to be proficient in it. Also, having this +skill at level 1 will give you a hitpoint-penalty of 1%, all the way up to +skill level 50, with a hitpoint-penalty of 50%. There are also ToHit and ToDam +penalties for sorcery, so don't choose sorcery if you plan to do much fighting. + +There is also the *****skills.txt*22[Spell Power] skill. This skill is rather nice, since it +will augment the power of spells you already know. The distinction between this +and the others, is that it will not grant you new spells, but instead increases +the levels of spells. At level 50 it grants 20 extra spell levels. [[[[[BThis skill ] +[[[[[Bonly affects the 11 primary schools] (Mana, Earth, Air, Fire, Water, Meta, +Mind, Temporal, Conveyance, Divination and Nature) as well as Geomancy and the +spells granted by the Gods. + +There is also the Magic-Device skill which affects your ability to use wands, +staves, rods and to activate special objects. It also affects the spell-levels +of the staff and wand spells, as explained below. +~~~~~02|Wands +~~~~~04|Magic|Wands and Staves +~~~~~05|Staves +#####GWands and Staves + +Wands and staves (sticks) operate in a similar fashion, and in fact most of +them use the same spells with the same effects. When you pick up a stick, you'll +see it has two numbers in the format [x|y] in addition to the number of charges +it holds. By increasing your magic-device skill you can increase the level (and +hence the power) of the spell in that stick. The x value are skill level +bonuses which the staff itself holds, and these are added onto your existing +magic-device skill for the purpose of using the staff. The y value is the +maximum possible skill level for that stick. Things are balanced by the use of a +"minimum magic-device skill level required to raise spell level". Here's an +example: +A Staff of Sense Hidden [1|10]. Your magic device skill is at 6. If you were to +identify the staff and then 'I'nspect it, you would see the following +information: + +&&&&&w wSwpwewlwlw wdwewswcwrwiwbwtwiwownw:w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w +&&&&&w wDwewtwewcwtwsw wtwhwew wtwrwawpwsw wiwnw waw wcwewrwtwawiwnw wrwawdwiwuwsw wawrwowuwnwdw wywowuw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w +&&&&&w wAwtw wlwewvwewlw w1w5w wiwtw wawlwlwowwwsw wywowuw wtwow wswewnwswew wiwnwvwiwswiwbwlwew wfwowrw waw wwwhwiwlwew w w w w w w w w w w w w w w w w w w w w w w +&&&&&w wSwpwewlwlw wlwewvwewlw:w B3w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w +&&&&&w wMwiwnwiwmwuwnw wMwawgwiwcw wDwewvwiwcwew wlwewvwewlw wtwow wiwnwcwrwewawswew wswpwewlwlw wlwewvwewlw:w B5w w w w w w w w w w w w w w w w w w w w w w w w w w +&&&&&w wSwpwewlwlw wfwawiwlw:w g2g3w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w +&&&&&w wSwpwewlwlw wiwnwfwow:w yryaydy y1y3w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w + +The Spell level is the level at which the spell will actually be cast. +Spell fail is the spell fail percentage. The spell info may contain the radius +of effect, amount of damage, or duration the spell might last. +The Minimum Magic Device level to increase your spell level is just that. If +your magic device skill was less than this level, then the staff would be +casting the spell at level one. Our magic device skill is 6. Therefore we are +casting at level 2 (at skill level 5, we should be casting the spell at level +1). Then we add the bonus from the staff of 1, which gives us our spell level +of 3. If our magic device in this example had been 14, this would have given us +a spell level of 1 + (14 - 5 + 1) = 11. This is calculated from the formula: +spell level = staff bonus + (magic device - minimum magic device + 1)). +However given that the maximum spell level with this staff is 10, you'll be +casting with a spell level of 10. +As you get deeper into the dungeons, you will find sticks with higher bonuses +and maximum spell levels. + + Written by: vrak AKA Per-Arne Holtmon Akoe + Wands and Staves section added by fearoffours diff --git a/lib/mods/theme/help/newbie.hlp b/lib/mods/theme/help/newbie.hlp new file mode 100644 index 00000000..2dda8dbc --- /dev/null +++ b/lib/mods/theme/help/newbie.hlp @@ -0,0 +1,16 @@ +|||||oy +~~~~~01|Help|New players +#####RWelcome to the ToME New Players Help System. +#####R============================================= + +Please choose one of the following help files: + + *****/awhattome.txt*0[(a) What is ToME?] + *****/bbirth.txt*0[(b) Creating a character] Race, class, gods, stats + more + *****/cexplore.hlp*0[(c) Exploring the town and dungeon] Dungeons, commands, features + *****/dexperien.hlp*0[(d) Gaining experience] Skills and abilities + *****/emagic.hlp*0[(e) Using magic and magical items] Magic schools, the 'm' menu, wands etc + *****/fTANG.txt*0[(f) The ToME newbie guide] + + *****/zhelp.hlp*0[(z) Main Help menu] + diff --git a/lib/mods/theme/help/option.txt b/lib/mods/theme/help/option.txt new file mode 100644 index 00000000..34a2fe6b --- /dev/null +++ b/lib/mods/theme/help/option.txt @@ -0,0 +1,697 @@ +|||||oy +~~~~~05|Options +#####R=== Options and Effects (ToME 2.1.x) === + +Most of the options are accessible through the '=' command, which provides +an interface to the various sets of options available to the player. + +In the descriptions below, each option is listed as the textual summary +which is shown on the options screen, plus the internal name of the +option in brackets, followed by a textual description of the option. + +Note that the internal name of the option can be used in user pref files +to force the option to a given setting; see *****command.txt*105["command.txt"] for more info. + +Various concepts are mentioned in the descriptions below, including "disturb" +(cancel any running, resting, or repeated commands, which are in progress), +"flush" (forget any keypresses waiting in the keypress queue, including any +macros in progress), and "fresh" (dump any pending output to the screen). + +~~~~~06|Options|Startup +#####R=== Birth/Startup Options === + +The birth or startup options are only able to be changed during character +creation, and can be accessed by typing '=' during the creation process. They +can also be viewed from the option menu while playing, but not changed then. + +#####GMaximise stats [maximize] + Maximise causes the race and class stat bonuses to be applied like + equipment bonuses. This usually makes the character harder at the + beginning of the game, but easier later on, since the stats are no longer + limited to a "natural" value of 28 (18/100). + +#####GPreserve artifacts [preserve] + Preserve artifacts cancels all level feelings of the "special" variety, + but allows missed artifacts to be "saved" by wandering monsters and + found again at a later time. This only works for non-identified artifacts. + +#####GSpecify 'minimal' stats [autoroll] + Uses the standard autoroller for character creation. This allows the player + to specify a set of minimum values for the stats, and the game will keep + rerolling until it achieves them (or 1 million rolls, whichever comes + first). Be warned, however, that there is a maximum total power permitted + for a starting character. Setting one stat to near maximum is easily + achievable; 2 is reasonable; but 3 would require the remaining 3 stats to + be near their minimum values. + +#####GGenerate character using a point system [point_based] + Allows the player to distribute a certain number of points among her stats. + It results in the player being able to get one or two really high stats, at + the expense of other not-so-important stats; or to have a well-rounded + character who is above average (but not great) in all stats. Unused points + convert into starting gold for the player. + +#####GAlways generate very unusual rooms [ironman_rooms] + Tries to place a special room or vault on every dungeon level. Very fun, + but extremely deadly - imagine that Greater Checkerboard Vault with Lokkak + on dungeon level 1! + +#####GAllow notes to be written to a file [take_notes] + Allows any player-written notes (with the "|" command) to be written to + a file and kept (instead of being put in the message list). + +#####GAutomatically note important events [auto_notes] + Used in conjunction with the take_notes option, this option makes a note + each time you gain a level, kill a unique, find an artifact, etc. + +#####GFast autoroller (NOT on multiuser systems) [fast_autoroller] + The normal autoroller has a built-in delay that helps prevent it from + overloading a system. This option reduces that delay, allowing characters + to be rolled in a much shorter time, but should not be used on multiuser + systems. + +#####GAllow use of some 'joke' monsters [joke_monsters] + Allows monsters flagged as being some of DarkGod's jokes to be generated. + +#####GAlways make small levels [always_small_level] + Overrides the in-game option of small_levels, generating smaller levels + whenever possible. + +#####GYou can receive fates, good or bad [fate_option] + Allows the player to turn off ToME's *****fatespoi.txt*0[fates] for that character. + +~~~~~07|Options|Ingame +#####RIN GAME OPTIONS +#####R=============== + +These options are available from within the game, and can be toggled on and +off at will during the course of the game. + +~~~~~08|Options|Interface +#####R=== Option Set 1 -- User Interface === + +#####GRogue-like commands [rogue_like_commands] + Selects the "roguelike" command set (see *****command.txt*0["command.txt"] for info). +~~~~~1 +#####GActivate quick messages [quick_messages] + Allows the use of any keypress as a response to the "-more-" prompt + (useful for monster farming). Allows most keys to mean "no" to any + "[y/n]" prompt. + +#####GPrompt for various information [other_query_flag] + No longer used. + +#####GPrompt before picking things up [carry_query_flag] + Forces the game to ask you for confirmation when you do something that + would normally cause an item to be picked up. +~~~~~4 +#####GUse old target by default [use_old_target] + Forces all commands which normally ask for a direction to use the + current target if there is one. If the current target is a monster, it + becomes unset when that monster dies. Use of this option can be dangerous + if you target locations on the ground, unless you clear them when done. + +#####GPick things up by default [always_pickup] + Tells the game that walking onto an item should attempt to pick it up. + Otherwise, you must use the "g" command, or the "-" command while walking. + Combined with "carry_query_flag" (Prompt before picking things up), allows + you to selectively pick up all items which you step on. + +#####GPrompt before picking up heavy objects [prompt_pickup_heavy] + Generates a prompt whenever the character tries to pick up an item that + would slow him down. + +#####GRepeat obvious commands [always_repeat] + Tells the game that when you attempt to open a door or chest, bash + a door, tunnel through walls, or disarm traps or chests, that you + wish to repeat the command 99 times (see *****command.txt*0["command.txt"]). + +#####GShow dungeon level in feet [depth_in_feet] + Display the dungeon depth in "feet" instead of as a level number (one + level is equivalent to 50'). This also affects the monster memory display. + +#####GMerge inscriptions when stacking [stack_force_notes] + Force otherwise identical objects to merge, even if one has an empty + inscription and the other does not. The resulting stack keeps the + non-empty inscription. + +#####GMerge discounts when stacking [stack_force_costs] + Force otherwise identical objects to merge, even if they have different + discounts. The resulting stack keeps the largest discount. This option + may cause you to lose "value", but will give you optimal pack usage. + +#####GShow labels in object lists [show_labels] + Display the "labels" for objects in the equipment list, and in any + special window which is displaying the equipment. These labels + indicate what the player is using the object for, such as "wielding" + or "wearing" (in a given location). After you have played for a while, + this information is no longer useful, and can be annoying. + Note that in ToME this option no longer controls the "plain + flavoured object descriptions": a separate option for them has been added + under "ToME Options". + +#####GShow weights in object lists [show_weights] + Display the weight of objects in the inventory and equipment lists, + and in stores, and in any special window which is displaying any of + these lists. + +#####GShow graphics in inventory list [show_inven_graph] + Display the graphics of objects in the inventory list, and in any special + window which is displaying the inventory list. + +#####GShow graphics in equipment list [show_equip_graph] + Display the graphics of objects in the equipment list, and in any special + window which is displaying the equipment list. + +#####GShow graphics in stores [show_store_graph] + Display the graphics of objects in the store list. + +#####GShow choices in certain sub-windows [show_choices] + Indicate legal choices in special windows which display lists. + +#####GShow details in certain sub-windows [show_details] + Indicate extra details in special windows, currently used to activate + the display of death counts and monster descriptions when recalling + details about a monster. + +#####GAudible bell (on errors, etc) [ring_bell] + Attempt to make a "bell" noise when various errors occur. + +~~~~~09|Options|Disturbance +#####R=== Option Set 2 -- Disturbance === + +#####GRun past stairs [find_ignore_stairs] + Ignore stairs when running. + +#####GRun through open doors [find_ignore_doors] + Ignore open doors when running. + +#####GRun past known corners [find_cut] + Cut sharply around known corners when running. This will result in + faster running, but may cause you to run into a lurking monster. + +#####GRun into potential corners [find_examine] + Fully explore potential corners in hallways. This is strongly + recommended if your light source has a small radius (e.g. a torch). + +#####GDisturb whenever any monster moves [disturb_move] + Disturb the player when any monster moves, appears, or disappears. + This includes monsters which are only visible due to telepathy, so + you should probably turn this option off if you want to "rest" near + such monsters. + +#####GDisturb whenever viewable monster moves [disturb_near] + Disturb the player when any viewable monster moves, whenever any + monster becomes viewable for the first time, and also whenever any + viewable monster becomes no longer viewable. This option ignores + the existence of telepathy for the purpose of determining whether + a monster is viewable. See also the "view_reduce_view" option. + +#####GDisturb whenever map panel changes [disturb_panel] + This option causes you to be disturbed (stop running) when the screen + scrolls, as it does when you get close to the edge of the visible screen. + +#####GDisturb whenever leaving trap-detected area [disturb_detect] + This option causes you to be disturbed whenever you are leaving + a trap-detected area. This option is strongly recommended. + +#####GDisturb whenever player state changes [disturb_state] + This option causes you to be disturbed whenever the player state + changes, including changes in hunger, resistance, confusion, etc. + +#####GDisturb whenever boring things happen [disturb_minor] + This option causes you to be disturbed by various boring things, + including monsters bashing down doors, inventory feelings, and + beginning to run out of light-source fuel. + +#####GDisturb whenever random things happen [disturb_other] + In ToME, uncursed teleporting items may teleport you around sometimes, + asking for your confirmation (and possibly disturbing your rest). If you + unset this option, they will stop asking you and teleporting you randomly. + Cursed items will neither ask for confirmation nor stop teleporting you + even if this option is unset. (You may also inscribe an item with {.} + to suppress its random-teleportation power, unless it is cursed.) + +#####GAlert user to critical hitpoints [alert_hitpoint] + Produce a "bell" noise, and flushes all pending input, when your hitpoints + reach the warning point chosen elsewhere, preventing stupid deaths. + +#####GAlert user to various failures [alert_failure] + Produce a "bell" noise, and flushes all pending input, when various + failures occur, as described above. + +#####GGet last words when the character dies [last_words] + Display a random line from the "death.txt" file when your character + dies. If this option is not selected, the "You die." message is displayed + instead. + +#####GAllow shopkeepers and uniques to speak [speak_unique] + If this option is in use, shopkeepers may sometimes whisper rumours to + you. Also certain monsters start boasting as they attack you, and when + they die, they say their "last words". + +#####GNo query to destroy known worthless items [auto_destroy] + It can sometimes be annoying that the Destroy command asks for confirmation + when you are attempting to destroy a Broken sword {cursed}. If this option + is set, no confirmation will be asked if you attempt to destroy an object + which you know to be worthless. Of course, cursed artifacts cannot be + destroyed even if this option is set. + +#####GConfirm to wear/wield known cursed items [confirm_wear] + Some players may occasionally, due to a typing mistake, find themselves + wearing an item which they knew was cursed. If this option is set, you + should be safe from such typing mistakes: you will be prompted if you + attempt to wear or wield an item if your character knows it is cursed. + +#####GPrompt before exiting a dungeon level [confirm_stairs] + Some players (such as myself) often accidentally press the '<' key + and exit a Special feeling level. If this option is set, the program + asks for confirmation before you go up or down the stairs. Others may + find the prompt annoying; they should of course not set this option. :-) + +#####GDisturb when visible pets move [disturb_pets] + The player may wish that some of the disturbance options do not apply + to pets: for example, it can be annoying if your rest is always disturbed + by a pet dog who pops in every now and then. By default, pets do not + disturb you even if full monster disturbance options are set. If you + want your pets to disturb you like normal monsters, set this option. + +#####GAutomatically open doors [easy_open] + Opens (and unlocks) doors by walking into them. Also, if you are adjacent + to only one known door, using the "o"pen command will not prompt you for + a direction. + +#####GAutomatically disarm traps [easy_disarm] + Attempts to disarm traps by walking into/over them. Also, if you are + adjacent to only one known trap, using the "D"isarm command will not + prompt you for a direction. If your disarming ability is particularly + low, you should probably not enable this option, because you will often + fail to disarm the traps, and sometimes trigger them. + +#####GAutomatically tunnel walls [easy_tunnel] + Automatically tunnels into walls by walking into them. + +~~~~~10|Options|Game-play +#####R=== Option Set 3 -- Game-play === + +#####GAuto-haggle in stores [auto_haggle] + Disable haggling in stores, resulting in a ten percent sales tax + on items which you would have otherwise been forced to haggle for. + When this option is on, all prices listed in stores will be the + actual price that you pay for an item, as opposed to the price + that the shop-keeper will suggest. + +#####GAuto-scum for good levels [auto_scum] + This is a hack but allows you to force the generation of "good" levels + in the dungeon. This option may be extremely slow on some machines, + especially deep in the dungeon. The minimum "goodness" of the level + is based on the dungeon level, so the deeper you go, the better the + level will be. + +#####GAllow weapons and armor to stack [stack_allow_items] + Allow identical weapons and armor to be combined into a stack. This + also allows unidentified, but identical, ammo to be combined, which + may result in the auto-identification of some of the ammo, but which + makes it a lot easier to actually use unidentified ammo. + +#####GAllow wands/staffs/rods to stack [stack_allow_wands] + Allow identical wands/staffs/rods to be combined into a stack. This + may force the items to be unstacked to use them, which may result + in overflow of the pack. Also, the entire stack can be recharged + (and possibly destroyed) at the same time. + +#####GExpand the power of the look command [expand_look] + Expand the "l"ook command to allow the user to look at grids which + are not actually in view of the player, allowing the examination of + objects/monsters which have only been detected by spells, or sensed + via telepathy. + +#####GExpand the power of the list commands [expand_list] + Expand the "listing" commands so that they wrap at the edges of + the appropriate list. This allows the "l"ook and "t"arget commands + to cycle through all appropriate grids forever, and the "identify + symbol" to browse through all of the monsters of a given type. + +#####GMap remembers all perma-lit grids [view_perma_grids] + Memorise all perma-lit floor grids which are seen by the player. + This option allows you to keep track of which explored floor grids + were perma-lit, but does not distinguish between dark floor grids, + unexplored floor grids, and unknown grids. Turning off this option + allows the player to always know which lit floor grids are in line + of sight, but this is better accomplished by the "view_bright_lite" + option. Note that any non-floor grids which is seen by the player + are always memorised, and any object which is seen by the player is + memorised independently from the memorisation of the grid itself. + +#####GMap remembers all torch-lit grids [view_torch_grids] + Memorise all (torch-lit) floor grids which are seen by the player. + This option not only allows you to keep track of which floor grids + have been explored, but also which ones are dark, because the use + of this option activates a special color scheme for the display of + floor grids, in which dark grids are drawn in dark grey, lit grids + are drawn in white, and (if the "view_bright_lite" option is set) + lit grids which are also in line of sight are drawn in orange. Note + that grids which are currently torch-lit are considered to be "lit", + and are thus drawn in white, unless the "view_yellow_lite" option is + set, in which case they are drawn in yellow. + +#####GAllow some monsters to carry light [monster_lite] + This option allows some monsters to carry light sources around with them, + lighting up the space around them. It can also allow you to see when some + monsters are heading your way before they reach the bend in the corridor + where you are hiding in ambush.... + +#####GGenerate dungeons with aligned rooms [dungeon_align] + Force all rooms to be aligned with the "panel" divisions. This results + in a much prettier dungeon, but may result in fewer greater vaults. + +#####GGenerate dungeons with connected stairs [dungeon_stair] + Always generate a staircase back to the level whence you came, if you used + a staircase to get to the level. This is more "realistic", and safer, + but less of a challenge for some people. + +#####GMonsters chase current location (v.slow) [flow_by_sound] + Allow monsters to make paths to the player when they are nearby. This + option is extremely slow, but can produce viciously smart monsters. +~~~~~3 +#####GUse special symbols for the player char [player_symbols] + If this option has been compiled in, it allows you to display your + character using race / class / sex dependent colours and graphical + symbols. Note that the support for this option may not have been + compiled in on all platforms. + +#####GPlain object descriptions [plain_descriptions] + In ToME, this option disables "full" names for identified flavoured + objects; in other words, if this option is not in use, an identified + Potion of Speed could be listed (for example) as a Blue Potion of Speed. + If you prefer simpler, less verbose descriptions, set this option. + +#####GMonsters learn from their mistakes [smart_learn] + Allow monsters to learn what spell attacks you are resistant to, + and to use this information to choose the best attacks. + +#####GMonsters exploit players weaknesses [smart_cheat] + Allow monsters to know what spell attacks you are resistant to, without + first having to observe such an attack upon you, and to use this + information to choose the best attacks. + +#####GMonsters behave stupidly [stupid_monsters] + ToME incorporates Keldon Jones' improved monster Artificial + Intelligence patch. While this patch most certainly makes monsters + behave more realistically, they will also be more deadly with the + improved AI. If you are a sissy, set this option to get the old, + really stupid monster AI. + Note that the new AI is a bit processing power expensive. If you have + an old computer (386sx) and ToME is running too slowly, you could + try turning stupid_monsters on. Or dumpster-dive for a Pentium so you can + run ToME. :-) + +#####GAllow unusually small dungeon levels [small_levels] + This option enables the creation of levels of varying sizes. Levels + that are as small as one "screen" (80x24) are possible, and they can be + quite dangerous, especially for a low level character, because they have + as many monsters and traps as their full-sized counterparts. + Note that this option has the side effect of enabling / disabling + 'destroyed' levels (they are enabled if small levels are). + +#####GAllow empty 'arena' levels [empty_levels] + Normal dungeon levels consist mostly of rock. If this option is in + use, levels which have empty floor instead of solid rock may also + be created (somewhat reminiscent of Nethack's "big-room" levels). + These levels can be extremely deadly, especially with breathing + monsters (since there are few obstructions to shield you). Arena levels + may have vaults, nests and pits in them like normal levels. Some + arena levels are dark when they are created, but most are lit. + +~~~~~11|Options|Efficiency +#####R=== Option Set 4 -- Efficiency === + +#####GReduce lite-radius when running [view_reduce_lite] + Reduce the radius of the player's light to that of a torch (radius 1) + when the player is running, which makes running more efficient (CPU-wise), + but is extremely annoying. Certain older versions of Angband used + this behavior always, so "purists" should turn it on. + +#####GReduce view-radius in town [view_reduce_view] + No longer in use. + +#####GAvoid checking for user abort [avoid_abort] + Avoid checking to see if the user has pressed a key during resting + or running or repeated commands. This not only makes the game much + more efficient (on many systems), but also allows the use of certain + obscure macro sequences, such as turning this option on, resting until + done, turning this option off, and casting a spell. Note that the use + of this option may be dangerous on certain "graphic" machines. Resting + for long periods of time with this option set is dangerous since the + resting may not stop until the user takes damage from starvation. + +#####GAvoid processing special colors [avoid_other] + Avoid processing the "multi-hued" or "clear" attributes of monsters. + This will cause all multi-hued monsters to appear violet and all + clear monsters to appear white, and will cause trappers and lurkers to + be visible on some machines, but it may greatly increase efficiency + especially when telepathy is active. Certain systems may choose to set + this option if they are unable to support the special color processing, + but if they handle graphics "correctly", by using attr/char pairs with + the "high bits" set, then not only will the game correctly avoid using + any "dangerous" color processing, but it will allow such processing to + occur when it is not dangerous. So if you are using graphics, and you + use a normal attr/char for the floor grids, then you can use the + "special lighting effects" for floors. + +#####GFlush input on various failures [flush_failure] + This option forces the game to flush all pending input whenever various + "failures" occur, such as failure to cast a spell, failure to use a wand, + etc. This is very useful if you use macros which include "directional" + components with commands that can fail, since it will prevent you from + walking towards monsters when your spells fail. + +#####GFlush input whenever disturbed [flush_disturb] + This option forces the game to flush all pending input whenever the + character is "disturbed". This is useful if you use macros which take + time, since it will prevent you from continuing your macro while being + attacked by a monster. + +#####GFlush input before every command [flush_command] + This option forces the game to flush all pending input before every + command. This option is silly, unless you are very paranoid. + +#####GFlush output before every command [fresh_before] + This option forces the game to flush all output before every command. + This will give you maximal information, but may slow down the game + somewhat. Note that this option is only useful when using macros, + resting, running, or repeating commands, since the output is always + flushed when the game is waiting for a keypress from the user. + +#####GFlush output after every command [fresh_after] + This option forces the game to flush all output after not only every + player command, but also after every round of processing monsters and + objects, which will give you maximal information, but may slow down + the game a lot, especially on slower machines; and on faster machines + you normally do not have a chance to see the results anyway. + +#####GFlush output after every message [fresh_message] + This option forces the game to flush all output after every message + displayed by the game. This will give you maximal information, but + may slow down the game somewhat. +~~~~~2 +#####GHilite the player with the cursor [hilite_player] + Place the visible cursor on the player. This looks fine on some Unix + machines, but horrible on most graphics machines. Note that only some + machines are able to *not* show the cursor, but on those machines, hiding + the cursor often speeds up the game and looks better. + +#####GUse special colors for torch-lit grids [view_yellow_lite] + This option causes special colors to be used for "torch-lit" grids in + certain situations (see "view_granite_lite" and "view_special_lite"). + Turning this option off will slightly improve game speed. + +#####GUse special colors for 'viewable' grids [view_bright_lite] + This option causes special colors to be used for non "viewable" grids + in certain situations (see "view_granite_lite" and "view_special_lite"). + When this option is set, floor grids which are normally drawn in white + but which are not currently viewable by the player are instead drawn + in dark grey. This makes the viewable grids appear brighter than the + others, allowing the player to easily determine which floor grids are + in line of sight. Turning this option off will probably increase the + speed of the game. + +#####GUse special colors for wall grids (slow) [view_granite_lite] + This option activates a special color scheme for all wall grids which + are normally drawn in white (as walls and rubble normally are). When + the player is blind, we use dark grey, else if the grid is torch-lit, + we use yellow (or white, depending on the "view_yellow_lite" option), + else if the "view_bright_lite" option is set, and the grid is not in line + of sight, or the grid is dark, or the grid is only "partially" lit, then + we use grey, otherwise we use the normal white. Turning this option + off will probably increase the speed of the game. + +#####GUse special colors for floor grids (slow) [view_special_lite] + This option activates a special color scheme for all floor grids which + are normally drawn in white (as they normally are). When the player is + blind, we use dark grey, else if the grid is torch-lit, we use yellow + (or white, depending on the "view_yellow_lite" option), else if the grid + is dark, we use dark grey, else if the "view_bright_lite" option is + set, and the grid is not in line of sight, we use grey, otherwise we + use the normal white. Turning this option off will probably increase + the speed of the game. + +#####GCentre the view on the player (very slow) [center_player] + Keeps the player's character in the centre of the screen, and moves the + dungeon around the player. Can be useful to prevent off-screen breaths. + +~~~~~12|Options|ToME Options +#####R=== ToME Options === + +Features which are unique to ToME are collected in this menu. + +#####GIngame contextual help [ingame_help] + Setting this option allows the game to trigger a help message the first + time you come across an item or some other trigger. This is very useful + for new players. More experienced players may wish to switch this option + off. + +#####GShow the experience needed for the next level [exp_need] + Setting this option alters the display of experience on the left of + the main screen to the experience needed to reach the next character level, + instead of the character's current total experience. + +#####GUse the old(Z) coloring scheme(reload the game) [old_colors] + Setting this option toggles the ASCII game colour display from the + standard Angband monster colours to the Zangband-based monster colours. + Since this alters the display and monster memory display, you need to + reload the game when you alter this setting before it will display the + new colours. + +#####GAutomatically clear '-more-' prompts [auto_more] + Setting this option automatically clears any messages from the top + of the window. Be warned that this could be dangerous, as you don't + actually get to see the messages unless you use ^P. + +#####GPlayer char represent his/her health [player_char_health] + Setting this option only affects the game when playing without tiles. + As the player becomes injured, his icon changes to a figure representing + the percentage of health remaining; for example if he is down to 68% of + his maximum hitpoints, his character will be a '6' instead of an '@'. + The character used only starts changing once the player has lost at + least 30% of his maximum hitpoints. + +#####GStats are represented in a linear way [linear_stats] + Setting this option alters the display of character stats. The default + is 3 to 40 (linear), but the older 3 to 18/220 (Moria/Angband style) is + retained for players who prefer it. + +#####GIn option windows, just omit the select char [inventory_no_move] + If this option is set, the equipment/inventory windows don't move items + around when a prompt asks for an item. + + +#####R=== Stacking Options === + +In ToME items are allowed to stack on floors and monsters are allowed to +maintain inventories. These features are enabled by default, and aren't +accessible through the option menu, but can still be disabled through +user pref files (see *****command.txt*105["command.txt"]). + +#####GAllow objects to stack on the floor [testing_stack] + Allows a cave grid to hold more than one object (or one kind of + object). + +#####GAllow monsters to carry objects [testing_carry] + If this option is set, monsters which "pick up" objects will drop + the objects they were carrying when you kill them. Note that monsters + which "crush" objects are not affected by this option. + +~~~~~13|Options|Base Delay Factor +#####R=== Base Delay Factor === + +The "delay_factor" value, if non-zero, is used to slow down the game, which is +useful to allow you to observe the temporal effects of bolt, beam, and ball +attacks. The actual delay is equal to "delay_factor" cubed, in milliseconds. +Frequently used factors are 2 or 3. + +~~~~~14|Options|Hitpoint Warning +#####R=== Hitpoint Warning === + +The "hitpoint_warn" value, if non-zero, is the percentage of maximal hitpoints +at which the player is warned that he may die. It is also used as the cut-off +for using red to display hitpoints, mana and sanity. It is entered as a value +between 0 and 9 (0% and 90%). + +~~~~~15|Options|Autosave +#####R=== Autosave Options === + +Ideally, the game should be so stable that these options are not needed +at all. However, even if the game were 100% reliable (which, to be frank, it +probably is not), the user might forget to save, and his hardware could fail +him. For all of these reasons, you may want to use these options: + +#####GAutosave when entering new levels [autosave_l] + If this option is set, the program will attempt to save your + character every time before creating a new dungeon level. Useful + if you experience any game or computer crashes (or your dog enjoys + kicking your power cords out of the wall like mine does!). + +#####GTimed autosave [autosave_t] + If this option is set, the program will attempt to save your + character every n game turns, where n is the "frequency". To set + frequency, press n: it will increase the frequency to the next + category, these being every 50, 100, 250, 500, 1000, 2500, 5000, + 10000 or 25000 turns. (After 25000, pressing n again will cycle back + to 0.) Note that the frequency must be higher than 0 and the + "Timed autosave" set to "yes" for timed autosaves to take place. + +~~~~~16|Options|Automatizer +#####R=== The Automatizer === + +Allows you to set options for the game to automatically destroy or pick up +objects when you identify them, for example skeletons, essences, cursed +daggers, etc. Useful for reducing the clutter in the dungeon, and reducing the +amount of loot to have to sort through. This *****automat.txt*0[Tutorial] may help you. + +~~~~~17|Options|Window Flags +#####R=== Window Flags === + +Selects what kind of information is displayed in which window, on platforms +which use multiple windows. + +You can select a window to be able to toggle between 2 different +sets of information (e.g. Basic Character stats and monster recall) +by pressing the "y" key over the second display option. + +~~~~~18|Options|Cheating +#####R=== Cheating Options === + +#####GPeek into object creation [cheat_peek] + Cheaters never win. But they can peek at object creation. + +#####GPeek into monster creation [cheat_hear] + Cheaters never win. But they can peek at monster creation. + +#####GPeek into dungeon creation [cheat_room] + Cheaters never win. But they can peek at room creation. + +#####GPeek into something else [cheat_xtra] + Cheaters never win. But they can see debugging messages. + +#####GKnow complete monster info [cheat_know] + Cheaters never win. But they can know all about monsters. + +#####GAllow player to avoid death [cheat_live] + Cheaters never win. But they can cheat death. + +~~~~~19|Options|Dump/Load Options +#####R=== Dump Options === + +Allows the player to save the options to a file (defaults to charname.prf) +so that they can be reloaded into other character files. + + +#####R=== Load Options === + +Allows you to load a preference file saved through the "Dump Options" +command in another character file, hence saving all the initial time of having +to reset all the options every time you wish to play. + + ++++ Ben +++ (Updated by Dark God and Dawnmist et al. for ToME) diff --git a/lib/mods/theme/help/r_beorn.txt b/lib/mods/theme/help/r_beorn.txt new file mode 100644 index 00000000..b000403f --- /dev/null +++ b/lib/mods/theme/help/r_beorn.txt @@ -0,0 +1,33 @@ +~~~~~01|Beorning +~~~~~02|Races|Beorning +#####R=== Beornings === + +#####GDescription +Beornings are the descendants of Beorn, a powerful shapeshifter who +dwells near Mirkwood. They have all inherited his shapeshifting abilities +and can turn into powerful bears at will. + +#####GStat Modifiers +Strength +4 +Intelligence -2 +Wisdom -2 +Dexterity -1 +Constitution +3 +Charisma -5 +Hit Dice Sides 12 +Exp Penalty +50% + +#####GSkill Bonuses (supplementary to existing skills) + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 2.500 [0.000] + Archery 0.500 [0.000] + Bearform-combat 1.000 [1.000] +Sneakiness -0.100 [0.000] + Stealth -2.000 [0.000] + Disarming -0.600 [0.000] +Magic + Magic-Device -0.800 [0.000] +Spirituality -3.000 [0.000] diff --git a/lib/mods/theme/help/r_demon.txt b/lib/mods/theme/help/r_demon.txt new file mode 100644 index 00000000..7d54d187 --- /dev/null +++ b/lib/mods/theme/help/r_demon.txt @@ -0,0 +1,31 @@ +~~~~~01|Demon +~~~~~02|Races|Demon +#####R=== Demons === + +#####GDescription +Demons are minor servants of the Dark. They are natural creatures +that have been corrupted and twisted by Melkor to serve his ends. +All demons have an intrinsic understanding of the forces of Dark, +they resist darkness and fear, and have a firm hold on their life +forces. Most of a demon's ability depends on their subrace, of +which there are ten. As a corrupted race, demons will gain and +lose corruptions randomly as they gain experience. + +#####GStat Modifiers +Strength 0 +Intelligence 0 +Wisdom 0 +Dexterity 0 +Constitution 0 +Charisma -1 +Hit Dice Sides 10 +Exp Penalty +70% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Sneakiness 0.000 [0.000] + Stealth 0.000 [0.000] + Disarming +0.500 [0.000] +Magic + Magic-Device +0.050 [0.000] +Spirituality -5.000 [0.000]
\ No newline at end of file diff --git a/lib/mods/theme/help/r_dragon.txt b/lib/mods/theme/help/r_dragon.txt new file mode 100644 index 00000000..097d6462 --- /dev/null +++ b/lib/mods/theme/help/r_dragon.txt @@ -0,0 +1,33 @@ +~~~~~01|Dragons +~~~~~02|Races|Dragons +#####R=== Dragons === + +#####GDescription +Dragons are majestic creatures of power traditionally aligned with +the forces of evil. However, some may choose to become adventurers. +They may not wield any weapons, bows, or play musical instruments. +However, they are able to fly from birth, and gain resistances to +some of the elements (depending on their subrace). Dragons have to +choose a subrace specific to their race. Dragons make very good +Mages, but they cannot become Geomancers, because they are unable +to wield mage staves. As winged beings, Dragons may not wear cloaks. + +#####GStat Modifiers +Strength +3 +Intelligence +2 +Wisdom +2 +Dexterity -2 +Constitution +2 +Charisma -5 +Hit Dice Sides 9 +Exp Penalty +150% + +#####GRacial Skills +Combat 0.000 [0.000] + Barehand-combat 0.000 [0.400] +Sneakiness 0.000 [0.000] + Stealth -10.000 [0.000] + Disarming 1.000 [0.000] +Magic 0.000 [0.000] + Magic-Device 0.500 [0.000] +Spirituality -4.000 [0.000]
\ No newline at end of file diff --git a/lib/mods/theme/help/r_drkelf.txt b/lib/mods/theme/help/r_drkelf.txt new file mode 100644 index 00000000..3f0758e5 --- /dev/null +++ b/lib/mods/theme/help/r_drkelf.txt @@ -0,0 +1,33 @@ +~~~~~01|Dark Elf +~~~~~02|Races|Dark Elf +#####R=== Dark Elves === + +#####GDescription +Another dark, cave-dwelling race, likewise unhampered by darkness attacks, +the Dark Elves have a long tradition and knowledge of magic. With their +intelligence and wisdom they can become superb mages or priests, and they +have an inherent magic missile attack available to them at a low level. With +their keen sight, they also learn to see invisible things as their relatives +the High-Elves do, but at a higher level. + +#####GStat Modifiers +Strength -1 +Intelligence +3 +Wisdom +2 +Dexterity +2 +Constitution -2 +Charisma +1 +Hit Dice Sides 9 +Exp Penalty +50% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery -0.500 [0.000] + Archery 1.000 [0.000] +Sneakiness 0.800 [0.000] + Stealth 3.000 [0.000] + Disarming 0.500 [0.000] +Magic 0.000 [0.200] + Magic-Device 1.500 [0.000] +Spirituality 10.000 [0.000] diff --git a/lib/mods/theme/help/r_druadan.txt b/lib/mods/theme/help/r_druadan.txt new file mode 100644 index 00000000..bf063956 --- /dev/null +++ b/lib/mods/theme/help/r_druadan.txt @@ -0,0 +1,32 @@ +~~~~~01|Druedain +~~~~~02|Races|Druadan +#####R=== Druedain === + +#####GDescription +An ancient branch of the race of Men, they are somewhat weaker, but wiser +and better at disguise. They can learn to throw poisoned darts (of which +they carry an unlimited supply). They are also inherently resistant to +poison, and can become adequate fighters. + +#####GStat Modifiers +Strength -2 +Intelligence -3 +Wisdom 2 +Dexterity 3 +Constitution -2 +Charisma -2 +Hit Dice Sides 9 +Exp Penalty +15% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat 0.000 [0.000] + Weaponmastery 1.000 [0.000] + Archery 0.800 [0.000] + Boomerang-mastery 0.000 [0.250] +Sneakiness 0.100 [0.000] + Stealth 1.000 [0.000] + Disarming -0.200 [0.000] +Magic 0.000 [0.000] + Magic-Device -0.300 [0.000] +Spirituality -1.000 [0.000]
\ No newline at end of file diff --git a/lib/mods/theme/help/r_dunad.txt b/lib/mods/theme/help/r_dunad.txt new file mode 100644 index 00000000..79b85049 --- /dev/null +++ b/lib/mods/theme/help/r_dunad.txt @@ -0,0 +1,32 @@ +~~~~~01|Dunedain +~~~~~02|Races|Dunedain +#####R=== Dunedain === + +#####GDescription +Dunedain are a race of hardy men from the West. This elder race surpasses +human abilities in every field, especially constitution. However, being +men of the world, very little is new to them, and levels are very hard for +them to gain. They can play all classes. Their constitution cannot be +reduced and they regain hit points quickly. + +#####GStat Modifiers +Strength +1 +Intelligence +2 +Wisdom +2 +Dexterity +2 +Constitution +3 +Charisma +2 +Hit Dice Sides 10 +Exp Penalty +80% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 1.500 [0.000] + Archery 1.000 [0.000] +Sneakiness 0.800 [0.000] + Stealth 2.000 [0.000] + Disarming 0.400 [0.000] +Magic + Magic-Device 0.500 [0.000] +Spirituality 2.500 [0.000] diff --git a/lib/mods/theme/help/r_dwarf.txt b/lib/mods/theme/help/r_dwarf.txt new file mode 100644 index 00000000..6c5a9b80 --- /dev/null +++ b/lib/mods/theme/help/r_dwarf.txt @@ -0,0 +1,39 @@ +~~~~~01|Dwarf +~~~~~02|Races|Dwarf +#####R=== Dwarves === + +#####GDescription +Dwarves are the headstrong miners and fighters of legend. Since dungeons +are the natural home of a dwarf, they are excellent choices for a warrior +or priest. Dwarves tend to be stronger and tougher but less agile and +intelligent than humans. Because they are so headstrong and are somewhat +wise, they resist spells which are cast on them. Dwarves also have very +good infra-vision because they live underground. They do have one big +drawback, though: dwarves are loud-mouthed and proud, singing in boisterous +voices, arguing with themselves for no good reason, and screaming out +challenges at nearby foes. In other words, dwarves have miserable +stealth. They can never be blinded, and they can also open secret tunnels +through rock. + +#####GStat Modifiers +Strength +2 +Intelligence -2 +Wisdom +2 +Dexterity -2 +Constitution +2 +Charisma -3 +Hit Dice Sides 11 +Exp Penalty +25% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 1.500 [0.000] + Axe-mastery 0.000 [0.200] + Archery 0.500 [0.000] +Sneakiness 0.700 [0.000] + Stealth -1.000 [0.000] + Disarming 0.200 [0.000] +Magic + Magic-Device 0.900 [0.000] +Spirituality 5.000 [0.000] diff --git a/lib/mods/theme/help/r_eagle.txt b/lib/mods/theme/help/r_eagle.txt new file mode 100644 index 00000000..cd59aaaf --- /dev/null +++ b/lib/mods/theme/help/r_eagle.txt @@ -0,0 +1,32 @@ +~~~~~01|Eagle +~~~~~02|Races|Eagle +#####R=== Eagles === + +#####GDescription +"The Eagles are coming! The Eagles are coming!" Ever has this cry signified +the Great Eagles of Manwe coming to a battlefield or a dire emergency to aid +the forces of good. Majestic magical birds ever faithful to Manwe Sulimo, +though they may choose to worship other Valar during their time on Arda. They +have been given many gifts by Manwe, not the least important of which is the +ability to resist the elements as they mature. They cannot wield weapons, +bows, or play musical instruments, however. The Eagles' greatest enemies are +the dragons, and they learn to detect the presence of dragons fairly early. +As winged creatures, Eagles may not wear cloaks. + +#####GStat Modifiers +Strength +6 +Intelligence +2 +Wisdom +1 +Dexterity -2 +Constitution +3 +Charisma +6 +Hit Dice Sides 12 +Exp Penalty +200% + +#####GRacial Skills +Combat 0.000 [0.000] + Barehand-combat 1.000 [0.300] +Sneakiness 3.000 [0.000] + Stealth -16.000 [0.000] + Disarming 6.000 [0.000] +Spirituality 5.000 [0.000]
\ No newline at end of file diff --git a/lib/mods/theme/help/r_easterl.txt b/lib/mods/theme/help/r_easterl.txt new file mode 100644 index 00000000..2370d260 --- /dev/null +++ b/lib/mods/theme/help/r_easterl.txt @@ -0,0 +1,34 @@ +~~~~~01|Easterling +~~~~~02|Races|Easterling +#####R=== Easterlings === + +#####GDescription +From the time of the Dagor Bragollach, the Easterlings have stood as +the treacherous race of men. Swarthy and stout, these humans cannot +be stunned, get a penchant for landing on their feet, and are not +confused easily, once they have gained some experience. They are equally +good at all kinds of weapons, being trained in combat from an early age. +They do not trust magic, however, and have little skill in it. + +#####GStat Modifiers +Strength +2 +Intelligence -2 +Wisdom -2 +Dexterity -2 +Constitution +2 +Charisma -1 +Hit Dice Sides 10 +Exp Penalty +40% + +#####GSkill bonuses (supplementary to existing skills) +Combat 1.000 [0.100] + Weaponmastery 0.500 [0.100] + Sword-mastery 0.000 [0.100] + Axe-mastery 0.000 [0.100] + Hafted-mastery 0.000 [0.100] + Polearm-mastery 0.000 [0.100] + Archery 2.000 [0.200] +Sneakiness 1.000 [0.300] + Stealth 1.000 [0.200] + Disarming 1.000 [0.200] +Spirituality 2.500 [0.300]
\ No newline at end of file diff --git a/lib/mods/theme/help/r_elf.txt b/lib/mods/theme/help/r_elf.txt new file mode 100644 index 00000000..6b4ceb3b --- /dev/null +++ b/lib/mods/theme/help/r_elf.txt @@ -0,0 +1,32 @@ +~~~~~01|Elf +~~~~~02|Races|Elf +#####R=== Elves === + +#####GDescription +Elves are better magicians than humans, but not as good at fighting. They +tend to be smarter and faster than either humans or half-elves and also +have better wisdom. Elves are better at searching, disarming, perception, +stealth, bows, and magic, but they are not as good at hand weapons. +They resist light effects intrinsically. + +#####GStat Modifiers +Strength -1 +Intelligence +2 +Wisdom +2 +Dexterity +1 +Constitution -2 +Charisma +2 +Hit Dice Sides 8 +Exp Penalty +20% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery -5.000 [0.000] + Archery 1.500 [0.000] +Sneakiness 0.800 [0.000] + Stealth 2.000 [0.000] + Disarming 0.500 [0.000] +Magic + Magic-Device 0.600 [0.000] +Spirituality 3.000 [0.000] diff --git a/lib/mods/theme/help/r_ent.txt b/lib/mods/theme/help/r_ent.txt new file mode 100644 index 00000000..1b3e047e --- /dev/null +++ b/lib/mods/theme/help/r_ent.txt @@ -0,0 +1,39 @@ +~~~~~01|Ent +~~~~~02|Races|Ent +#####R=== Ents === + +#####GDescription +The Ents are a powerful race dating back to the beginning of the world and +are the eldest of all animals or plants that inhabit Arda. Spirits of the land, +they were summoned to guard the forests of Middle-earth. Being much like +trees they are very slow but strong, and very susceptible to fire. They cannot +be poisoned, however, and their bark is very tough. As the Shepherds of the Trees, +they have the innate ability to cause trees to rise about them for protection. + +#####GStat Modifiers +Strength +10 +Intelligence -3 +Wisdom +2 +Dexterity -5 +Constitution +11 +Charisma -3 +Hit Dice Sides 14 +Exp Penalty +110% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery -0.300 [0.000] + Archery -0.200 [0.000] + Barehand-combat 0.000 [0.200] + Boulder-throwing 0.000 [0.600] +Sneakiness 0.500 [0.000] + Stealth -6.000 [0.000] + Disarming 0.500 [0.000] +Magic + Magic-Device 0.500 [0.000] +Spirituality 10.000 [0.000] + +#####GInnate Abilities: +#####BAbility Character level +Tree-walking 1 diff --git a/lib/mods/theme/help/r_gnome.txt b/lib/mods/theme/help/r_gnome.txt new file mode 100644 index 00000000..8272e8a5 --- /dev/null +++ b/lib/mods/theme/help/r_gnome.txt @@ -0,0 +1,36 @@ +~~~~~01|Gnome +~~~~~02|Races|Gnome +#####R=== Gnomes === + +#####GDescription +Gnomes are smaller than dwarves but larger than halflings. Like the hobbits, +they live in the earth in burrow-like homes. Gnomes make excellent magi, +and have very good saving throws. They are good at searching, disarming, +perception, and stealth. They have lower strength than humans and they are +not very good at fighting with hand weapons, but have developed a fondness +for the crossbow. Gnomes have fair infra-vision, so they can detect +warm-blooded creatures at a distance. Gnomes are intrinsically protected +against paralysis and some slowing effects. At higher levels, gnomes learn +to teleport at will. + +#####GStat Modifiers +Strength -1 +Intelligence +2 +Wisdom 0 +Dexterity +2 +Constitution +1 +Charisma -2 +Hit Dice Sides 8 +Exp Penalty +35% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery -0.800 [0.000] + Archery 1.200 [0.000] +Sneakiness 0.600 [0.000] + Stealth 3.000 [0.000] + Disarming 1.000 [0.000] +Magic + Magic-Device 1.200 [0.000] +Spirituality 6.000 [0.000] diff --git a/lib/mods/theme/help/r_hafelf.txt b/lib/mods/theme/help/r_hafelf.txt new file mode 100644 index 00000000..ea748440 --- /dev/null +++ b/lib/mods/theme/help/r_hafelf.txt @@ -0,0 +1,31 @@ +~~~~~01|Half-Elf +~~~~~02|Races|Half-Elf +#####R=== Half-Elves === + +#####GDescription +Half-elves tend to be smarter and more agile than humans, but not as tough. +Half-elves are slightly better at searching, disarming, saving throws, +stealth, bows, and magic, but they are not as good at hand weapons. Half- +elves may choose any class and do not receive any intrinsic abilities. + +#####GStat Modifiers +Strength 0 +Intelligence +1 +Wisdom +1 +Dexterity +1 +Constitution -1 +Charisma +1 +Hit Dice Sides 9 +Exp Penalty +10% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery -1.000 [0.000] + Archery 0.500 [0.000] +Sneakiness 0.600 [0.000] + Stealth 1.000 [0.000] + Disarming 0.200 [0.000] +Magic + Magic-Device 0.300 [0.000] +Spirituality 1.500 [0.000] diff --git a/lib/mods/theme/help/r_hafogr.txt b/lib/mods/theme/help/r_hafogr.txt new file mode 100644 index 00000000..2a173e98 --- /dev/null +++ b/lib/mods/theme/help/r_hafogr.txt @@ -0,0 +1,31 @@ +~~~~~01|Half-Ogre +~~~~~02|Races|Half-Ogre +#####R=== Half-Ogres === + +#####GDescription +Half-Ogres are a crossbreed between a human and an ogre. They are big, bad, and +stupid. For warriors, they have all the necessary attributes, and they can even +become priests: after all, they are related to Ogre Magi, from whom they have +learned the skill of setting trapped runes once their level is high enough. Like +orcs, they resist darkness, and like trolls, they have their strength sustained. + +#####GStat Modifiers +Strength +3 +Intelligence -1 +Wisdom -1 +Dexterity -1 +Constitution +3 +Charisma -3 +Hit Dice Sides 12 +Exp Penalty +30% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 2.000 [0.000] +Sneakiness -0.100 [0.000] + Stealth -2.000 [0.000] + Disarming -0.300 [0.000] +Magic + Magic-Device -0.500 [0.000] +Spirituality -2.500 [0.000] diff --git a/lib/mods/theme/help/r_hielf.txt b/lib/mods/theme/help/r_hielf.txt new file mode 100644 index 00000000..3317a67b --- /dev/null +++ b/lib/mods/theme/help/r_hielf.txt @@ -0,0 +1,34 @@ +~~~~~01|High-Elf +~~~~~02|Races|High-Elf +#####R=== High-Elves === + +#####GDescription +High-elves are a race of immortal beings dating from the beginning of +time. They are masters of all skills, and are strong and intelligent. +They can play all classes except rogues, and very well at that. +High-elves begin their lives able to see the unseen, and resist light +effects just like regular elves. However, there are few things that +they have not seen already, and experience is very hard for them to +gain. + +#####GStat Modifiers +Strength +1 +Intelligence +3 +Wisdom +2 +Dexterity +3 +Constitution +1 +Charisma +5 +Hit Dice Sides 10 +Exp Penalty +100% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 1.000 [0.000] + Archery 2.500 [0.000] +Sneakiness 0.300 [0.000] + Stealth 4.000 [0.000] + Disarming 0.400 [0.000] +Magic + Magic-Device 2.000 [0.000] +Spirituality 10.000 [0.000] diff --git a/lib/mods/theme/help/r_hobbit.txt b/lib/mods/theme/help/r_hobbit.txt new file mode 100644 index 00000000..d9fafb08 --- /dev/null +++ b/lib/mods/theme/help/r_hobbit.txt @@ -0,0 +1,39 @@ +~~~~~01|Hobbit +~~~~~02|Races|Hobbit +#####R=== Hobbits === + +#####GDescription +Hobbits, or Halflings, are very good at ranged combat (especially with slings), +throwing, and have good saving throws. They also are very good at searching, +disarming, perception and stealth; so they make excellent rogues, but prefer +to be called burglars. They are much weaker than humans, and no good at melee +fighting. Halflings have fair infra-vision, so they can detect warm creatures +at a distance. Hobbits have their dexterity sustained and in time they learn +to cook a delicious meal from available ingredients. Their sturdy constitutions +also allow them to resist the insidious poison of the ring-wraiths. They do not +wear shoes, as their feet grow naturally thick, leathery soles which make shoes +a chore to put on and take off. + +#####GStat Modifiers +Strength -2 +Intelligence +2 +Wisdom +1 +Dexterity +3 +Constitution +2 +Charisma +1 +Hit Dice Sides 7 +Exp Penalty +10% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery -1.000 [0.000] + Archery 2.000 [0.000] + Sling-Mastery 0.000 [0.300] +Sneakiness 1.200 [0.000] + Stealth 5.000 [0.000] + Disarming 1.500 [0.000] +Magic + Magic-Device 1.800 [0.000] +Spirituality 9.000 [0.000] + diff --git a/lib/mods/theme/help/r_human.txt b/lib/mods/theme/help/r_human.txt new file mode 100644 index 00000000..57606764 --- /dev/null +++ b/lib/mods/theme/help/r_human.txt @@ -0,0 +1,23 @@ +~~~~~01|Human +~~~~~02|Races|Human +#####R=== Humans === + +#####GDescription +Humans act as a baseline race -- all other races are compared to them. +Humans can choose any class and are average at everything. Humans tend to +go up levels faster than most other races because of their shorter life +spans. No racial adjustments or intrinsics occur to characters choosing +the human race. + +#####GStat Modifiers +Strength 0 +Intelligence 0 +Wisdom 0 +Dexterity 0 +Constitution 0 +Charisma 0 +Hit Dice Sides 10 +Exp Penalty 0% + +#####GRacial Skill Modifiers: +None. Humans are the baseline race. diff --git a/lib/mods/theme/help/r_maia.txt b/lib/mods/theme/help/r_maia.txt new file mode 100644 index 00000000..d4a6c635 --- /dev/null +++ b/lib/mods/theme/help/r_maia.txt @@ -0,0 +1,20 @@ +~~~~~01|Maia +~~~~~02|Races|Maia +#####R=== Maia === + +#####GDescription +An old race, dating from before the creation of Arda, the Maiar were created by +Eru to help the Valar in their task. However, they can not worship a God, nor +is experience easy to remember for them. When they do finally manage to remember +their encounters, they will find that their abilities will increase as they gain +in knowledge. + +#####GStat Modifiers +Strength 0 +Intelligence 0 +Wisdom 0 +Dexterity 0 +Constitution 0 +Charisma 0 +Hit Dice Sides 10 +Exp Penalty +0% diff --git a/lib/mods/theme/help/r_orc.txt b/lib/mods/theme/help/r_orc.txt new file mode 100644 index 00000000..c4bcf691 --- /dev/null +++ b/lib/mods/theme/help/r_orc.txt @@ -0,0 +1,35 @@ +~~~~~01|Orc +~~~~~02|Races|Orc +#####R=== Orcs === + +#####GDescription +Orcs make excellent warriors and decent priests, but are terrible at magic. +They are as bad as dwarves at stealth, and horrible at searching, disarming, +and perception. Orcs are quite ugly, and tend to pay more for goods in town. +Orcs do make good warriors and rogues, for the simple reason that Orcs tend +to have great constitutions and lots of hit points. Because of their +preference for living underground rather than on the surface, orcs resist +darkness attacks. Upon reaching experience level 3, an orc learns to dispel +any fear that may be upon him. + +#####GStat Modifiers +Strength +2 +Intelligence -1 +Wisdom 0 +Dexterity +1 +Constitution +1 +Charisma -4 +Hit Dice Sides 10 +Exp Penalty +10% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 1.200 [0.000] + Archery -0.500 [0.000] +Sneakiness + Stealth -1.000 [0.000] + Disarming -0.300 [0.000] +Magic + Magic-Device -0.300 [0.000] +Spirituality -1.000 [0.000] diff --git a/lib/mods/theme/help/r_pettyd.txt b/lib/mods/theme/help/r_pettyd.txt new file mode 100644 index 00000000..c8b8eba3 --- /dev/null +++ b/lib/mods/theme/help/r_pettyd.txt @@ -0,0 +1,30 @@ +~~~~~01|Petty Dwarf +~~~~~02|Races|Petty Dwarf +#####R=== Petty Dwarves === + +#####GDescription +A hated and persecuted race of nocturnal dwarves, these cave-dwellers are not +bothered much by darkness. Their natural inclination to magically augmented +items has made them immune to effects which could drain away magical +enchantments, and, like ordinary dwarves, they can examine the dungeon to +discover traps and secret doors. They are quite proficient as priests, +warriors or rogues. + +#####GStat Modifiers +Strength +1 +Intelligence -1 +Wisdom +2 +Dexterity 0 +Constitution +2 +Charisma -4 +Hit Dice Sides 11 +Exp Penalty +35% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Sneakiness 0.500 [0.000] + Stealth 1.000 [0.000] + Disarming 0.300 [0.000] +Magic + Magic-Device 0.500 [0.000] +Spirituality 5.000 [0.000] diff --git a/lib/mods/theme/help/r_rohank.txt b/lib/mods/theme/help/r_rohank.txt new file mode 100644 index 00000000..03391d4b --- /dev/null +++ b/lib/mods/theme/help/r_rohank.txt @@ -0,0 +1,33 @@ +~~~~~01|RohanKnight +~~~~~02|Races|RohanKnight +#####R=== RohanKnights === + +#####GDescription +Knights of the Riddermark, these warriors are mounted upon swift steeds. +Thus they receive a bonus to speed from the beginning and gain in speed +as they become more experienced in riding. Wise through their prolonged +contact with the Dunedain, their wrath may be seen in auras of war that +drive their foes to confusion, and in a ray of light when jumping at light +speed. + +#####GStat Modifiers +Strength +4 +Intelligence -2 +Wisdom +3 +Dexterity +1 +Constitution +4 +Charisma +2 +Hit Dice Sides 10 +Exp Penalty +120% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 0.100 [0.200] + Archery 0.500 [0.000] +Sneakiness 0.100 [0.000] + Stealth -8.000 [0.000] + Disarming 1.000 [0.000] +Magic + Magic-Device 0.500 [0.000] +Spirituality 2.500 [0.000] diff --git a/lib/mods/theme/help/r_troll.txt b/lib/mods/theme/help/r_troll.txt new file mode 100644 index 00000000..f35e5aa6 --- /dev/null +++ b/lib/mods/theme/help/r_troll.txt @@ -0,0 +1,34 @@ +~~~~~01|Troll +~~~~~02|Races|Troll +#####R=== Trolls === + +#####GDescription +Trolls are incredibly strong, and have more hit points than most other +character races, so they make great warriors, and marginal priests. They +are also very stupid and clumsy. They are bad at searching, disarming, +perception, and stealth. They are so ugly that an orc grimaces in their +presence. They also happen to be fun to play.... Trolls always have +their strength sustained. At higher levels, trolls learn to enter a +berserk fury, and regenerate from their wounds automatically. + +#####GStat Modifiers +Strength +4 +Intelligence -4 +Wisdom -2 +Dexterity -4 +Constitution +3 +Charisma -6 +Hit Dice Sides 12 +Exp Penalty +37% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 2.000 [0.000] + Archery -1.000 [0.000] +Sneakiness -0.100 [0.000] + Stealth -2.000 [0.000] + Disarming -0.500 [0.000] +Magic + Magic-Device -0.800 [0.000] +Spirituality -4.000 [0.000] diff --git a/lib/mods/theme/help/r_wodelf.txt b/lib/mods/theme/help/r_wodelf.txt new file mode 100644 index 00000000..1cb4bb55 --- /dev/null +++ b/lib/mods/theme/help/r_wodelf.txt @@ -0,0 +1,37 @@ +~~~~~01|Wood Elf +~~~~~02|Races|Wood Elf +#####R=== Wood Elves === + +#####GDescription +The first love of Wood Elves is hunting. As such, their skill with the bow +is unparalleled. They train tirelessly with their bows, to the point of +neglecting even melee skills. They resist light as with other elves, and +do extra damage with a ranged weapon. They are almost custom made for the +archer class, but also make interesting warriors. Even Wood Elf Mages +are feasible, using the bow to attack and saving their magic for defence. +They are more dangerous but less wise than High-Elves. + +#####GStat Modifiers +Strength +2 +Intelligence +2 +Wisdom -3 +Dexterity +5 +Constitution 0 +Charisma +1 +Hit Dice Sides 7 +Exp Penalty +30% + +#####GRacial Skills +Combat 0.000 [0.000] + Archery 4.000 [0.000] + Weaponmastery 1.000 [0.200] +Sneakiness 0.800 [0.000] + Stealth 5.000 [0.000] + Disarming 0.500 [0.000] +Magic 0.000 [0.000] + Magic-Device 0.600 [0.000] +Spirituality 3.000 [0.000] + +#####GInnate Abilities: +#####BAbility Character level +Tree-walking 1 diff --git a/lib/mods/theme/help/r_yeek.txt b/lib/mods/theme/help/r_yeek.txt new file mode 100644 index 00000000..bdc7dcc5 --- /dev/null +++ b/lib/mods/theme/help/r_yeek.txt @@ -0,0 +1,30 @@ +~~~~~01|Yeek +~~~~~02|Races|Yeek +#####R=== Yeeks === + +#####GDescription +Yeeks are the least powerful of all the races. They suffer disadvantages +in nearly all skills and attributes but to compensate they learn (and thus +gain levels) extremely quickly. + +#####GStat Modifiers +Strength -5 +Intelligence -5 +Wisdom -5 +Dexterity -5 +Constitution -5 +Charisma -5 +Hit Dice Sides 6 +Exp Penalty -75% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery -0.500 [0.000] + Archery -0.500 [0.000] +Sneakiness -0.500 [0.000] + Stealth -5.000 [0.000] + Disarming -0.500 [0.000] +Magic + Magic-Device -0.500 [0.000] +Spirituality -2.500 [0.000] diff --git a/lib/mods/theme/help/rm_adanrog.txt b/lib/mods/theme/help/rm_adanrog.txt new file mode 100644 index 00000000..5e4a46b9 --- /dev/null +++ b/lib/mods/theme/help/rm_adanrog.txt @@ -0,0 +1,31 @@ +~~~~~01|Adanrog +~~~~~02|Race Modifiers|Adanrog +#####R=== Adanroeg (Man-demons) === + +#####GDescription +The greatest of all the lesser demons, these are humanoid +figures wreathed in living flame. Their most obvious +advantage is that they are completely immune to fire from +birth, because they are born in fire and all carry a small +part of the Flame of Udun inside them. They are equally +good at magic and combat. With time, they learn to channel +the forces of darkness to temporarily assume Balrog form. + +#####GStat Modifiers +Strength +1 +Intelligence +1 +Wisdom +1 +Dexterity +1 +Constitution +1 +Charisma +1 +Hit Dice +3 sides +Exp Penalty +50% + +#####GSkill Bonuses (supplementary to existing skills) +Combat 0.000 [0.300] +Magic 0.000 [0.300] + +#####GStarting Equipment +An Adanrog character begins the game with: + Some rations + Some torches
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_aewrog.txt b/lib/mods/theme/help/rm_aewrog.txt new file mode 100644 index 00000000..28d8013f --- /dev/null +++ b/lib/mods/theme/help/rm_aewrog.txt @@ -0,0 +1,35 @@ +~~~~~01|Aewrog +~~~~~02|Race Modifiers|Aewrog +#####R=== Aewroeg (Bird Demons) === + +#####GDescription +The Aewroeg are birds corrupted by Morgoth into foul +birdlike beings with dazzling wings. They are somewhat +physically weak, but expert at befuddling enemies so +that they believe they'd never seen anything so fair. +They can fly, and their charisma is naturally sustained. +With experience, they learn to resist fire and to +prevent holding magics. They also have an innate ability +to flap their wings to create mesmerising illusions. +Good magic users, they are particularly skilled at the +Mind school. + +#####GStat Modifiers +Strength -2 +Intelligence 0 +Wisdom 0 +Dexterity 0 +Constitution 0 +Charisma +3 +Hit Dice +1 sides +Exp Penalty +0% + +#####GSkill Bonuses (supplementary to existing skills) +Magic 0.000 [0.200] +Mind 1.000 [0.300] + +#####GStarting Equipment +An Aewrog character begins the game with: + Some rations + Some torches + A spellbook of Charm
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_barb.txt b/lib/mods/theme/help/rm_barb.txt new file mode 100644 index 00000000..57d793ff --- /dev/null +++ b/lib/mods/theme/help/rm_barb.txt @@ -0,0 +1,38 @@ +~~~~~01|Barbarian +~~~~~02|Race Modifiers|Barbarian +#####R=== Barbarian Race === + +#####GDescription +Barbarians are hardy members of their race. They are fierce in combat, and +their wrath is feared throughout the world. Combat is their life: they learn +to feel no fear. Barbarians are, however, suspicious of magic, which makes +magic devices fairly hard for them to use, and also makes it impossible for +them to play Mages. + +#####GStat Modifiers +Strength +2 +Intelligence -3 +Wisdom -2 +Dexterity +1 +Constitution +1 +Charisma -3 +Hit Dice +1 side +Spell Points -50% +Exp Penalty +25% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 1.200 [0.000] + Archery 0.500 [0.000] +Sneakiness + Stealth -2.000 [0.000] + Disarming -0.200 [0.000] +Magic + Magic-Device -1.000 [0.000] +Spirituality 0.200 [0.000] + +#####GStarting Equipment +A barbarian character begins the game with: + Some rations + Some torches diff --git a/lib/mods/theme/help/rm_black.txt b/lib/mods/theme/help/rm_black.txt new file mode 100644 index 00000000..1570389c --- /dev/null +++ b/lib/mods/theme/help/rm_black.txt @@ -0,0 +1,31 @@ +~~~~~01|Black +~~~~~02|Race Modifiers|Black +#####R=== Black Dragons === + +#####GDescription +These dragons are utterly in command of the element of acid. They +resist acid very well and learn to become impervious to it with +experience. Their glistening coats are so beautiful that those who +look upon them cannot help but marvel at their majesty. The more +experience they gain, the more charismatic they become. They have +an innate ability to spit acid collected at the bottom of their +stomach, and they have access to the Water school of magic. + +#####GStat Modifiers +Strength 0 +Intelligence 0 +Wisdom 0 +Dexterity 0 +Constitution 0 +Charisma +3 +Hit Dice +0 sides +Exp Penalty +0% + +#####GSkill Bonuses (supplementary to existing skills) +Water 1.000 [0.600] + +#####GStarting Equipment +A Black dragon character begins the game with: + Some rations + Some torches + A spellbook of Geyser
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_blue.txt b/lib/mods/theme/help/rm_blue.txt new file mode 100644 index 00000000..d6d0bbeb --- /dev/null +++ b/lib/mods/theme/help/rm_blue.txt @@ -0,0 +1,31 @@ +~~~~~01|Blue +~~~~~02|Race Modifiers|Blue +#####R=== Blue Dragons === + +#####GDescription +These dragons are utterly in command of the element of Earth. +As such, they have an innate resistance to electricity, which +with time becomes full immunity, as they can use the power of +the Earth to neutralize electrical discharges. They have access +to the Earth school of magic and can conjure up showers of +blazing sparks to dazzle their opponents. They are especially +agile and lithe, and their dexterity will increase with experience. + +#####GStat Modifiers +Strength 0 +Intelligence 0 +Wisdom 0 +Dexterity +3 +Constitution 0 +Charisma 0 +Hit Dice +0 sides +Exp Penalty +0% + +#####GSkill Bonuses (supplementary to existing skills) +Earth 1.000 [0.600] + +#####GStarting Equipment +A Blue dragon character begins the game with: + Some rations + Some torches + A spellbook of Stone Skin diff --git a/lib/mods/theme/help/rm_cabrog.txt b/lib/mods/theme/help/rm_cabrog.txt new file mode 100644 index 00000000..eee1dada --- /dev/null +++ b/lib/mods/theme/help/rm_cabrog.txt @@ -0,0 +1,35 @@ +~~~~~01|Caborrog +~~~~~02|Race Modifiers|Caborrog +#####R=== Caborroeg (Frog Demons) === + +#####GDescription +These demons are frogs that have been corrupted by Melkor. +Small humanoids with quick, darting eyes and a penchant +for emitting loud croaks. As such, they are not very +strong or stealthy - however, they are quite fast and +smart. With experience, they learn to develop a special +protective layer around themselves and do not even need +to wear armour. Expert magic users, their intelligence +increases with experience, and they have access to the +Conveyance and Temporal schools of magic. + +#####GStat Modifiers +Strength -1 +Intelligence +2 +Wisdom +1 +Dexterity 0 +Constitution 0 +Charisma -3 +Hit Dice +2 sides +Exp Penalty +10% + +#####GSkill Bonuses (supplementary to existing skills) +Dodging 1.000 [0.400] +Magic 0.000 [0.200] +Conveyance 0.000 [0.300] +Temporal 0.000 [0.300] + +#####GStarting Equipment +A Caborrog character begins the game with: + Some rations + Some torches
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_class.txt b/lib/mods/theme/help/rm_class.txt new file mode 100644 index 00000000..81f72d87 --- /dev/null +++ b/lib/mods/theme/help/rm_class.txt @@ -0,0 +1,14 @@ +~~~~~01|Classical +~~~~~02|Race Modifiers|Classical +#####R=== Classical Race === + +#####GDescription +This is the normal, classical character of your chosen race. + +#####GStat Modifiers +No changes to stats. + +#####GStarting Equipment +A classical character begins the game with: + Some rations + Some torches diff --git a/lib/mods/theme/help/rm_drarog.txt b/lib/mods/theme/help/rm_drarog.txt new file mode 100644 index 00000000..7794f2cd --- /dev/null +++ b/lib/mods/theme/help/rm_drarog.txt @@ -0,0 +1,34 @@ +~~~~~01|Draugrog +~~~~~02|Race Modifiers|Draugrog +#####R=== Draugroeg (Wolf Demons) === + +#####GDescription +Humanoids with long, snoutlike faces and shaggy fur around +the ears. They learn more quickly and have more magical +powes than their Hurog cousins. They have a tendency to +snarl, however, which makes them quite unstealthy. They too +learn to detect living and non-living beings around them as +they gain experience, but they can also learn to detect the +presence of powerful objects and beings before they even get +near them. Good with magic, they have the ability to harness +the power of their mind. + +#####GStat Modifiers +Strength +1 +Intelligence +1 +Wisdom +1 +Dexterity +1 +Constitution +1 +Charisma -1 +Hit Dice +0 sides +Exp Penalty -20% + +#####GSkill Bonuses (supplementary to existing skills) +Magic 0.000 [0.200] +Spirituality 0.000 [0.200] +Mindcraft 1.000 [0.500] + +#####GStarting Equipment +A Draugrog character begins the game with: + Some rations + Some torches
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_ether.txt b/lib/mods/theme/help/rm_ether.txt new file mode 100644 index 00000000..ee49f002 --- /dev/null +++ b/lib/mods/theme/help/rm_ether.txt @@ -0,0 +1,32 @@ +~~~~~01|Ethereal +~~~~~02|Race Modifiers|Ethereal +#####R=== Ethereal Dragons === + +#####GDescription +These dragons are powerful undead creatures, able to both fly and +pass through solid objects with ease. Because of their previous +experiences, they are much wiser than other dragons, and being +undead, they know very well how to keep hold of their life force. +As undead, they have access to the realm of chaos in the nether +world, and can learn to breathe chaos at their enemies. Their +wisdom increases with time, granting them access to the complex +Meta school of magic. + +#####GStat Modifiers +Strength 0 +Intelligence 0 +Wisdom +3 +Dexterity 0 +Constitution 0 +Charisma 0 +Hit Dice +0 sides +Exp Penalty +0% + +#####GSkill Bonuses (supplementary to existing skills) +Meta 1.000 [0.600] + +#####GStarting Equipment +An Ethereal dragon character begins the game with: + Some rations + Some torches + A spellbook of Recharge diff --git a/lib/mods/theme/help/rm_green.txt b/lib/mods/theme/help/rm_green.txt new file mode 100644 index 00000000..0e07d6aa --- /dev/null +++ b/lib/mods/theme/help/rm_green.txt @@ -0,0 +1,30 @@ +~~~~~01|Green +~~~~~02|Race Modifiers|Green +#####R=== Green Dragons === + +#####GDescription +Sickly greenish vapours rise from the scales and skin of these +dragons. They have utter mastery of environmental poisons and +air, and so are much healthier than other dragons, and do not +succumb to constitution-draining attacks. They have ability to +instantly forge poison darts from the upper layer of their scales, +and they have access to the Air school of magic. + +#####GStat Modifiers +Strength 0 +Intelligence 0 +Wisdom 0 +Dexterity 0 +Constitution +3 +Charisma 0 +Hit Dice +0 sides +Exp Penalty +0% + +#####GSkill Bonuses (supplementary to existing skills) +Air 1.000 [0.600] + +#####GStarting Equipment +A Green dragon character begins the game with: + Some rations + Some torches + A spellbook of Noxious Cloud diff --git a/lib/mods/theme/help/rm_herm.txt b/lib/mods/theme/help/rm_herm.txt new file mode 100644 index 00000000..4787b8ae --- /dev/null +++ b/lib/mods/theme/help/rm_herm.txt @@ -0,0 +1,36 @@ +~~~~~01|Hermit +~~~~~02|Race Modifiers|Hermit +#####R=== Hermit Race === + +#####GDescription +Hermits live retired from the world. Spending long hours studying, they +weaken their physical side while they strengthen their spiritual powers. +Thus they get higher mana reserves but are much worse at physical combat. + +#####GStat Modifiers +Strength -3 +Intelligence +1 +Wisdom +1 +Dexterity -3 +Constitution -3 +Charisma +1 +Hit Dice -3 sides +Spell Points +20% +Exp Penalty +20% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery -0.500 [0.000] + Archery -0.500 [0.000] +Sneakiness 0.400 [0.000] + Stealth 3.000 [0.000] + Disarming 0.500 [0.000] +Magic + Magic-Device 1.000 [0.000] +Spirituality 0.500 [0.000] + +#####GStarting Equipment +A hermit begins the game with: + Some rations + Some torches diff --git a/lib/mods/theme/help/rm_hurog.txt b/lib/mods/theme/help/rm_hurog.txt new file mode 100644 index 00000000..10b6b922 --- /dev/null +++ b/lib/mods/theme/help/rm_hurog.txt @@ -0,0 +1,27 @@ +~~~~~01|Hurog +~~~~~02|Race Modifiers|Hurog +#####R=== Huroeg (Dog Demons) === + +#####GDescription +The Huroeg are dogs that have been corrupted by Melkor - +Humanoid creatures with doglike snouts and elongated ears. +One of the lowest form of demons, they have an uncanny +sense of smell which increase with experience, so that +these creatures learn to detect every living thing around +them. They are very good at detecting treasure, and will +become expert at searching for hidden passageways and traps. + +#####GStat Modifiers +Strength -1 +Intelligence 0 +Wisdom 0 +Dexterity 0 +Constitution -1 +Charisma 0 +Hit Dice +0 sides +Exp Penalty -10% + +#####GStarting Equipment +A Hurog character begins the game with: + Some rations + Some torches
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_limrog.txt b/lib/mods/theme/help/rm_limrog.txt new file mode 100644 index 00000000..bf43a87b --- /dev/null +++ b/lib/mods/theme/help/rm_limrog.txt @@ -0,0 +1,33 @@ +~~~~~01|Limrog +~~~~~02|Race Modifiers|Limrog +#####R=== Limroeg (Fish Demons) === + +#####GDescription +Humanoid creatures with gill slits at the necks. They can +survive underwater for extended periods of time, and with +sufficient experience, they'll learn to breathe without any +air at all. Somewhat weak and sickly, they are highly agile +and masters of the Conveyance, Temporal, and Meta schools of +magic. They also have several special abilities that enable +them to disappear and reappear at will. + +#####GStat Modifiers +Strength -2 +Intelligence +1 +Wisdom +1 +Dexterity +3 +Constitution -1 +Charisma -1 +Hit Dice +1 sides +Exp Penalty +50% + +#####GSkill Bonuses (supplementary to existing skills) +Magic 0.000 [0.200] +Conveyance 0.000 [0.500] +Temporal 0.000 [0.500] +Meta 0.000 [0.500] + +#####GStarting Equipment +A Limrog character begins the game with: + Some rations + Some torches
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_lsoul.txt b/lib/mods/theme/help/rm_lsoul.txt new file mode 100644 index 00000000..2f5e6e2c --- /dev/null +++ b/lib/mods/theme/help/rm_lsoul.txt @@ -0,0 +1,26 @@ +~~~~~01|Lost Soul +~~~~~02|Race Modifiers|Lost Soul +#####R=== LostSoul === + +#####GDescription + +#####RThis is a difficult modifier. Your character will almost always die quickly. +#####RIt's probably best only to play it after you have some experience with normal +#####Rcharacters. + +There are haunting whispers of souls that have come back from the Halls of +Waiting, for purposes unknown. These are called Lost Souls, for it is presumed +that their real body died off long ago, leaving only a soul to wander forever... +or until killed again. +Lost Souls start at level 98 of the Halls of Waiting. Very few ever make it out +again. Those that do can continue as a fairly normal character, but with the +advantage of any treasure and experience gained. + +#####GStat Modifiers +No changes to stats. + +#####GStarting Equipment +A Lost Soul starts the game with: + Some torches. + Over thirty scrolls of Identify. + Over twenty scrolls of Satisfy Hunger. diff --git a/lib/mods/theme/help/rm_lygrog.txt b/lib/mods/theme/help/rm_lygrog.txt new file mode 100644 index 00000000..80b6fa45 --- /dev/null +++ b/lib/mods/theme/help/rm_lygrog.txt @@ -0,0 +1,27 @@ +~~~~~01|Lygrog +~~~~~02|Race Modifiers|Lygrog +#####R=== Lygroeg (Snake Demons) === + +#####GDescription +These slithering snakelike demons lack many physical +advantages of their humanoid cousins, but they have +access to lost and forgotten realms of magic that +enable them to overcome their physical handicaps, if +they can survive long enough to reap the benefits of +their experience, that is. As highly magical creatures, +they are no good at anything else. + +#####GStat Modifiers +Strength -3 +Intelligence +5 +Wisdom +5 +Dexterity +5 +Constitution -1 +Charisma -6 +Hit Dice +2 sides +Exp Penalty +40% + +#####GStarting Equipment +A Lygrog character begins the game with: + Some rations + Some torches
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_narrog.txt b/lib/mods/theme/help/rm_narrog.txt new file mode 100644 index 00000000..2f0ed5f9 --- /dev/null +++ b/lib/mods/theme/help/rm_narrog.txt @@ -0,0 +1,34 @@ +~~~~~01|Narrog +~~~~~02|Race Modifiers|Narrog +#####R=== Narroeg (Rat Demons) === + +#####GDescription +These ratlike demons have fangs that drip with venom. +Their quick, scurrying feet enable them to gain speed +as they gain experience. They learn to use the winglike +appendages on their slick, black backs in order to fly. +They are somewhat weak and sickly (though resistant to +poison), but sly, cunning and agile. Good with magic, +they can forge poison darts to throw at their opponents, +and can become masters of disguise and disappearance. + +#####GStat Modifiers +Strength -1 +Intelligence +1 +Wisdom +1 +Dexterity +1 +Constitution -1 +Charisma -2 +Hit Dice +1 sides +Exp Penalty +20% + +#####GSkill Bonuses (supplementary to existing skills) +Stealth 1.000 [0.500] +Magic 0.000 [0.200] +Conveyance 1.000 [0.300] + +#####GStarting Equipment +A Narrog character begins the game with: + Some rations + Some torches + A spellbook of Phase Door
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_rawrog.txt b/lib/mods/theme/help/rm_rawrog.txt new file mode 100644 index 00000000..830a8dc3 --- /dev/null +++ b/lib/mods/theme/help/rm_rawrog.txt @@ -0,0 +1,30 @@ +~~~~~01|Rawrog +~~~~~02|Race Modifiers|Rawrog +#####R=== Rawroeg (Lion Demons) === + +#####GDescription +Tall humanoids with glorious red-gold hair and decidedly +catlike faces, the Rawroeg are corrupted lions. Strong, +healthy, intelligent and wise, they fear very little and +can emit roars that instill fear into the very souls of +their enemies. They learn to resist the elements fairly +well as they gain experience. They make good warriors. + +#####GStat Modifiers +Strength +2 +Intelligence +1 +Wisdom +1 +Dexterity -1 +Constitution +2 +Charisma +1 +Hit Dice +2 sides +Exp Penalty +30% + +#####GSkill Bonuses (supplementary to existing skills) +Combat 0.000 [0.100] +Weaponmastery 0.000 [0.100] + +#####GStarting Equipment +A Rawrog character begins the game with: + Some rations + Some torches
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_red.txt b/lib/mods/theme/help/rm_red.txt new file mode 100644 index 00000000..ac2ef2fc --- /dev/null +++ b/lib/mods/theme/help/rm_red.txt @@ -0,0 +1,30 @@ +~~~~~01|Red +~~~~~02|Race Modifiers|Red +#####R=== Red Dragons === + +#####GDescription +These dragons are utterly in command of the element of fire. +Not only are they surrounded by a fiery blaze, but they learn +to withstand the effects of fire entirely as they become more +experienced. They are also able to draw upon their master +element to become even stronger as they mature. They can +breathe fire and they have access to the Fire school of magic. + +#####GStat Modifiers +Strength +3 +Intelligence 0 +Wisdom 0 +Dexterity 0 +Constitution 0 +Charisma 0 +Hit Dice +0 sides +Exp Penalty +0% + +#####GSkill Bonuses (supplementary to existing skills) +Fire 1.000 [0.600] + +#####GStarting Equipment +A Red dragon character begins the game with: + Some rations + Some torches + A spellbook of Globe of Light diff --git a/lib/mods/theme/help/rm_sarnrog.txt b/lib/mods/theme/help/rm_sarnrog.txt new file mode 100644 index 00000000..4b34f0c0 --- /dev/null +++ b/lib/mods/theme/help/rm_sarnrog.txt @@ -0,0 +1,30 @@ +~~~~~01|Sarnrog +~~~~~02|Race Modifiers|Sarnrog +#####R=== Sarnroeg (Stone Demons === + +#####GDescription +Medium-sized winged humanoids that look like they are +made of stone - they are Druedain that have been corrupted +by Melkor. Though clumsy and dumb, they are strong and stout. +They learn to resist the basic elements quite well, and they +can sustain themselves by eating stones and rocks. They have +the ability to throw boulders at their enemies, and are good +at digging tunnels. + +#####GStat Modifiers +Strength +2 +Intelligence -1 +Wisdom -2 +Dexterity -2 +Constitution +2 +Charisma -1 +Hit Dice +2 sides +Exp Penalty +20% + +#####GSkill Bonuses (supplementary to existing skills) +Boulder-throwing 1.000 [0.500] + +#####GStarting Equipment +A Sarnrog character begins the game with: + Some rations + Some torches
\ No newline at end of file diff --git a/lib/mods/theme/help/rm_skel.txt b/lib/mods/theme/help/rm_skel.txt new file mode 100644 index 00000000..aff6408d --- /dev/null +++ b/lib/mods/theme/help/rm_skel.txt @@ -0,0 +1,40 @@ +~~~~~01|Skeleton +~~~~~02|Race Modifiers|Skeleton +#####R=== Skeletal Race === + +#####GDescription +As undead beings, skeletons need to worry very little about poison or +attacks that can drain life. They do not really use eyes for perceiving +things, and are thus not fooled by invisibility. Their bones are resistant +to sharp shrapnels (not much to cut there), and they will quickly become +resistant to cold. It is very hard for skeletons to eat food or drink potions. +Although the magical effects of these will affect the skeleton even without +entering the skeleton's (non-existent) belly, the potion / food itself will +fall through the skeleton's jaws, giving no nutritional benefit. + +#####GStat Modifiers +Strength 0 +Intelligence -2 +Wisdom -2 +Dexterity 0 +Constitution +1 +Charisma -4 +Hit Dice +0 sides +Spell Points -30% +Exp Penalty +45% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 0.800 [0.000] +Sneakiness -0.100 [0.000] + Stealth -1.000 [0.000] + Disarming -0.500 [0.000] +Magic + Magic-Device -0.500 [0.000] +Spirituality 0.500 [0.000] + +#####GStarting Equipment +A skeletal character begins the game with: + Some scrolls of satisfy hunger + Some torches diff --git a/lib/mods/theme/help/rm_spec.txt b/lib/mods/theme/help/rm_spec.txt new file mode 100644 index 00000000..01802465 --- /dev/null +++ b/lib/mods/theme/help/rm_spec.txt @@ -0,0 +1,44 @@ +~~~~~01|Spectre +~~~~~02|Race Modifiers|Spectre +#####R=== Spectral Race === + +#####GDescription + +Another powerful undead creature, the spectre is a ghastly apparition, +surrounded by an unearthly glow. They exist only partially on our +plane of existence: half-corporeal, they can pass through walls, though +this requires a sacrifice of some of their life-force. As a result +they cannot rest whilst passing through a wall. + +As undead, they have a firm hold on their life force, can see invisible, and +resist poison and cold. They also resist nether. Spectres make superb +spellcasters, but their physical form is very weak. Like Zombies, +Spectres gain almost no nutrition from ordinary food. + +#####GStat Modifiers +Strength -5 +Intelligence +4 +Wisdom +4 +Dexterity +2 +Constitution -3 +Charisma -6 +Hit Dice -3 sides +Spell Points +5% +Exp Penalty +80% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery -0.500 [0.000] + Archery -0.200 [0.000] +Sneakiness 0.200 [0.000] + Stealth 2.000 [0.000] + Disarming 0.200 [0.000] +Magic + Magic-Device 0.800 [0.000] +Spirituality 0.700 [0.000] + +#####GStarting Equipment +A spectral character begins the game with: + Some scrolls of satisfy hunger + Some torches diff --git a/lib/mods/theme/help/rm_vamp.txt b/lib/mods/theme/help/rm_vamp.txt new file mode 100644 index 00000000..22ae6514 --- /dev/null +++ b/lib/mods/theme/help/rm_vamp.txt @@ -0,0 +1,32 @@ +~~~~~01|Vampire +~~~~~02|Race Modifiers|Vampire +#####R=== Vampire === + +#####GDescription +One of the mightier undead creatures, the vampire is an awe-inspiring +sight. Yet this mighty creature has a serious weakness: the bright rays of +sun are its bane, and it will need to flee the surface to the deep +recesses of the earth until the sun finally sets. Darkness, on the other +hand, only makes the vampire stronger. Being undead, the vampire has a firm +hold on its life force, and resists nether attacks. The vampire also +resists cold and poison based attacks. It is, however, susceptible to its +perpetual hunger for fresh blood, which can only be satiated by sucking +the blood from a nearby monster, which is the vampire's special power. + +It should be noted that the vampires are so sensitive to daylight that even +certain artifact light items which are filled with daylight will hurt them +if they try to wield the items. Fortunately, the vampires do not really +need these items, since they radiate an aura of 'dark light' of their own. +Light resistance will, in any case, protect the vampire from the adverse +effects of sunlight. + +#####GStat Modifiers +Strength +3 +Intelligence +2 +Wisdom -3 +Dexterity -2 +Constitution +1 +Charisma -4 +Hit Dice +1 side +Spell Points +0% +Exp penalty +100% diff --git a/lib/mods/theme/help/rm_white.txt b/lib/mods/theme/help/rm_white.txt new file mode 100644 index 00000000..00f31694 --- /dev/null +++ b/lib/mods/theme/help/rm_white.txt @@ -0,0 +1,32 @@ +~~~~~01|White +~~~~~02|Race Modifiers|White +#####R=== White Dragons === + +#####GDescription +White dragons are extremely intelligent and calculating, +always able to keep a cool head. They can breathe cold +and freeze time and space long enough to divine what the +future and present have in store, and to find out the +abilities of objects. Their intelligence will increase as +they gain experience. Naturally resistant to cold, they +will learn to withstand its effects entirely with time. +They are especially susceptible to fire attacks, however. + +#####GStat Modifiers +Strength 0 +Intelligence +3 +Wisdom 0 +Dexterity 0 +Constitution 0 +Charisma 0 +Hit Dice +0 sides +Exp Penalty +0% + +#####GSkill Bonuses (supplementary to existing skills) +Divination 1.000 [0.600] + +#####GStarting Equipment +A White dragon character begins the game with: + Some rations + Some torches + A spellbook of Sense Monsters diff --git a/lib/mods/theme/help/rm_zomb.txt b/lib/mods/theme/help/rm_zomb.txt new file mode 100644 index 00000000..be89162b --- /dev/null +++ b/lib/mods/theme/help/rm_zomb.txt @@ -0,0 +1,39 @@ +~~~~~01|Zombie +~~~~~02|Race Modifiers|Zombie +#####R=== Zombie Race === + +#####GDescription +Much like Skeletons, zombies too are undead horrors: they are resistant to +life-draining attacks, they become resistant to cold-based attacks (actually +earlier than skeletons), resist poison and can see invisible, while being still +vulnerable to cuts (unlike skeletons). They also gain very little nutrition from +the food of mortals. However, zombies are, as the name implies, practically +mindless. + +#####GStat Modifiers +Strength +2 +Intelligence -6 +Wisdom -6 +Dexterity +1 +Constitution +4 +Charisma -5 +Hit Dice +3 sides +Spell Points -30% +Exp Penalty +45% + +#####GRacial Skill Modifiers: +#####BSkill Start Mod Skill Point Gains Mod +Combat + Weaponmastery 0.500 [0.000] +Sneakiness -0.100 [0.000] + Stealth -1.000 [0.000] + Disarming -0.200 [0.000] +Magic + Magic-Device -0.200 [0.000] +Spirituality 0.500 [0.000] + +#####GStarting Equipment +A zombie character begins the game with: + Some scrolls of satisfy hunger + Some torches + diff --git a/lib/mods/theme/help/skills.txt b/lib/mods/theme/help/skills.txt new file mode 100644 index 00000000..c4a02c06 --- /dev/null +++ b/lib/mods/theme/help/skills.txt @@ -0,0 +1,539 @@ +|||||oy +~~~~~55|Skills +#####R=== ToME Skills System === +One of the big differences between standard "Vanilla" Angband and ToME is the +implementation of a skill system where the player can choose what skills she +will improve as her character progresses. As such, many abilities such as +spell casting, fighting and trap disarming *do not* increase automatically - +the player must choose to use skill points to improve those abilities. This +gives the player the chance to tailor a character to suit their playing style +with a lot more flexibility than has existed with a fixed progression system +in the past. However, not all types of characters are able to gain skills to +the same degree; while a fighter can learn some magic, he's unlikely to become +as good at it as a mage can. So the number of skill points required to raise +a skill to the next level varies according to the starting "type" of character. + +You can also spend skill points in "one-off purchase" *****ability.txt*0[Abilities]. +~~~~~56|Skills|Screen +#####GThe Skills Menu +Each time you gain a level of experience, you receive 6 skill points to spread +around as you wish. To use these skill points, you need to access the skills +menu ("G" for both keysets). This opens up a long list of abilities that can +be improved. The menu may look something like this: + +&&&&&w w w w w w w w w w w w w w w w w w w w w w w w w w w w wTwowMwEw wSwkwiwlwlwsw wSwcwrwewewnw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w +&&&&&BEBnBtBeBrW WtWoW WdWeWvWeWlWoWpW WaW WbWrWaWnWcWhW,W BuBpW/BdBoBwBnW WtWoW WmWoWvWeW,W BrBiBgBhBtW/BlBeBfBtW WtWoW WmWoWdWiWfWyW,W B?W WfWoWrW WhWeWlWpw w w w +&&&&&BSBkBiBlBlB BpBoBiBnBtBsB BlBeBfBtB:B B6w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w +&&&&&yGyeynyeyryayly yaybyiylyiytyyy ytyoy yfyiygyhyty yaynydy ytyoy ypysyeyuydyoy-yiydy yayrymyoyrysy yaynydy ywyeyaypyoynysy.w w w w w w w w w w w w w w w w w w w +&&&&&yIyty yaylysyoy yaylylyoywysy ytyoy yuysyey yhyeyayvyiyeyry yayrymyoyuyrysy ywyiytyhyoyuyty ypyeynyaylytyiyeysw w w w w w w w w w w w w w w w w w w w w w w w w +&&&&&G[G-G]GCGoGmGbGaGtw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w G0G2G.G0G0G0G G[G0G.G8G0G0G]w w w w w w +&&&&&w w w w w w-w wWwewawpwownwmwawswtwewrwyw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w0w1w.w0w0w0w w[w0w.w8w5w0w]w w w w w w +&&&&&w w w w w w w w o o.o oSowooorodo-omoaosotoeoroyw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w o0o0o.o0o0o0o o[o0o.o4o0o0o]w w w w w w +&&&&&w w w w w w w w o o.o oAoxoeo-omoaosotoeoroyw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w o0o0o.o0o0o0o o[o0o.o4o0o0o]w w w w w w +&&&&&w w w w w w w w o o.o oHoaofotoeodo-omoaosotoeoroyw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w o0o0o.o0o0o0o o[o0o.o4o0o0o]w w w w w w +&&&&&w w w w w w w w o o.o oPoooloeoaoromo-omoaosotoeoroyw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w o0o0o.o0o0o0o o[o0o.o4o0o0o]w w w w w w +&&&&&w w w w w w.w wAwrwcwhwewrwyw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w0w1w.w0w0w0w w[w0w.w6w0w0w]w w w w w w +&&&&&w w w w o o.o oAonotoiomoaogoiocw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w o0o0o.o0o0o0o o[o0o.o5o5o0o]w w w w w w +&&&&&w w+w wSwnwewawkwiwnwewswsw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w0w1w.w0w0w0w w[w0w.w9w0w0w]w w w w w w +&&&&&w w+w wMwawgwiwcw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w0w1w.w0w0w0w w[w0w.w3w0w0w]w w w w w w +&&&&&w w-w wSwpwiwrwiwtwuwawlwiwtwyw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w0w1w.w0w0w0w w[w0w.w4w0w0w]w w w w w w +&&&&&w w w w o o.o oPoroaoyoeorw w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w o0o0o.o0o0o0o o[o0o.o5o0o0o]w w w w w w +&&&&&o o.o oMooonosotoeoro-oloooroew w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w o0o0o.o0o0o0o o[o0o.o5o0o0o]w w w w w w + +Now, looking at this screen, there are several things to be aware of. The +first line lets you know if you have any available skill points to spend, and +how many there are. Following that are 2 description lines for the currently +selected skill - in this case they are describing the "Combat" skill. When +looking at the list of skills, there are a few different colours used - the +light green coloured skill (which also has its starting character in square +brackets []) is the currently selected one - Combat in the example above. +Skills that you cannot learn are omitted from the list. Skills that you are +capable of learning, but as yet have not, are coloured in orange, while skills +of which you have some knowledge are shown in white. + +At the end of each skill is a pair of numbers. The first represents your +current level of knowledge in the skill, and the second how much an advance +in this knowledge investing one skill point in this skill would produce. So, +in the above example, if the player invested one skill point in their Combat +skill, the skill would increase from 02.000 to 02.800. + +In addition, investing in some skills may raise your knowledge in others. +This improvement is based on the modifier in the related class (the one which +gets the free points). For example, a skill point put into Weaponmastery +raises Combat by 0.5 skill points. This is actually multiplied by the skill +modifier that your character has in the Combat skill. For example, a +Swordmaster investing a skill point into Weaponmastery would have his Combat +skill raised by 0.5 * [0.900] while a Runecrafter would have his Combat +skill raised by 0.5 * [0.200]. + +As well as this, skills are grouped together in similar types. Looking under +the Combat skill, there are subtypes of Weaponmastery, Archery and Antimagic. +An increase of one of these subskills may also increase the main skill by a +small amount. You can tell which skills have subskills by the + (or -) in front +of their name. The + indicates that there are more skills within this category. +To open a skill category up, move the cursor up/down until the skill category +is green, then hit the "Enter" key. Likewise, the - indicates that the category +is already opened, and selecting this and hitting the "Enter" key will close it +up again. Skills which don't have usable subskills start with a ".". + +To spend points on a skill (including skill categories), use the left/right +arrow (right arrow or "6" adds one skill point, left arrow or "4" removes +one). Spending points on a sub-skill will also marginally improve the parent +skill (or skill category). When you've finished spending skill points (and any +unspent points *will* be saved), hit the "Esc" key to finish. This will give +a confirmation prompt to check that you really do want to spend your points as +you've assigned them. Saying 'y' saves the changes and allows you to use or +apply your new skills :). + +All skills have a maximum level of 50, and as long as you can learn a skill, +and have enough skill points to pump into it, it is theoretically possible to +get it to level 50 no matter what your race, class or how you learned it. + +Each skill affects your character differently. It may be worth getting one or +more of your characters skills to 50, but it may not be worth investing [[[[[Bany] +skill points in some other skills. As general and personal advice, which may +not work for you, I'd say concentrate on a few skills, and leave the others +empty. Just because you [[[[[Bcan] learn a skill, it doesn't mean you have to. +It often pays to have a plan ("I'm going to make this assassin the +stealthiest, most able-dodging, backstabber around. I'm not going to bother +with trapping or thieving ability") which you can stick to for the whole game. +~~~~~57|Skills|List of skills +#####GThe Skills Themselves +So you want to know what each of the skills do so that you can decide how to +spend you're hard-earned points, huh? Well, each skill affects different +abilities, and not all of them are intuitive - but they don't take all that +long to learn :). +If you don't find this informative enough, and would like more detailed spoilers +on what each skill does, try [[[[[ghttp://www.killerbunnies.org/angband/skill-220.html] +for some third party help! +The skills are: + + *****skills.txt*27[Air] *****skills.txt*49[Alchemy] *****skills.txt*50[Antimagic] *****skills.txt*08[Archery] + *****skills.txt*05[Axe-mastery] *****skills.txt*18[Backstab] *****skills.txt*13[Barehand-combat] *****skills.txt*61[Bearform-combat] + *****skills.txt*12[Boomerang-mastery] *****skills.txt*58[Boulder-throwing] *****skills.txt*10[Bow-mastery] *****skills.txt*01[Combat] + *****skills.txt*30[Conveyance] *****skills.txt*44[Corpse-preservation]*****skills.txt*04[Critical-hits] *****skills.txt*11[Crossbow-mastery] + *****skills.txt*52[Demonology] *****skills.txt*16[Disarming] *****skills.txt*31[Divination] *****skills.txt*20[Dodging] + *****skills.txt*28[Earth] *****skills.txt*25[Fire] *****skills.txt*60[Geomancy] *****skills.txt*06[Hafted-mastery] + *****skills.txt*21[Magic] *****skills.txt*54[Magic-device] *****skills.txt*24[Mana] *****skills.txt*29[Meta] + *****skills.txt*47[Mimicry] *****skills.txt*33[Mind] *****skills.txt*41[Mindcraft] *****skills.txt*42[Monster-lore] + *****skills.txt*59[Music] *****skills.txt*34[Nature] *****skills.txt*35[Necromancy] *****skills.txt*07[Polearm-mastery] + *****skills.txt*45[Possession] *****skills.txt*39[Prayer] *****skills.txt*36[Runecraft] *****skills.txt*09[Sling-mastery] + *****skills.txt*14[Sneakiness] *****skills.txt*22[Spell-power] *****skills.txt*38[Spirituality] *****skills.txt*23[Sorcery] + *****skills.txt*19[Stealing] *****skills.txt*15[Stealth] *****skills.txt*53[Stunning-blows] *****skills.txt*43[Summoning] + *****skills.txt*03[Sword-mastery] *****skills.txt*46[Symbiosis] *****skills.txt*32[Temporal] *****skills.txt*37[Thaumaturgy] + *****skills.txt*48[Udun] *****skills.txt*26[Water] *****skills.txt*02[Weaponmastery] + + +~~~~~01|Skills|Combat +[[[[[BCombat] +The combat skill is used to determine the maximum combined weight of armour +you can wear before you become encumbered by it. It also affects your general +fighting ability, although not to as great an extent as Weaponmastery, and +determines the speed and strength of pseudo-id of weapons and armour. + +Investing in the combat skill? You might be interested in the +*****ability.txt*05[Extra Max Blow(1)] and *****ability.txt*06[(2)] abilities. + +Sub-skills of Combat are Weaponmastery, Archery, Barehand-combat, +Boulder-throwing and Anti-magic. +~~~~~02|Skills|Weaponmastery +[[[[[BWeaponmastery] +This skill is a sub-skill of the Combat skill. It affects your general +ability to use melee weapons of all sorts. Spending 1 skill point on +Weaponmastery adds 0.5 bonus skill points to Combat. + +Investing in the weaponmastery skill? You might be interested in the +*****ability.txt*02[Spread Blows] ability. + +Sub-skills of Weaponmastery are Sword-mastery, Axe-mastery, Hafted-mastery +and Polearm-mastery. +~~~~~03|Skills|Sword-mastery +[[[[[BSword-mastery] +This skill is a sub-skill of the Weaponmastery skill. It affects your ability +to use bladed weapons (e.g. daggers, swords). Spending 1 skill point on your +Sword-mastery skill adds 0.25 bonus skill points to your Weaponmastery skill +and adds 0.07 bonus skill points to your Combat skill. + +Critical-hits is a sub-skill of Sword-mastery. +~~~~~04|Skills|Critical-Hits +[[[[[BCritical-hits] +This skill is a sub-skill of the Sword-mastery skill. It affects your ability +to deal critical hits to monsters using a bladed weapon that weighs less than 5 +pounds. Spending one skill point on your Critical-hits skill also increases +your Sword-mastery skill by 0.05 skill points. +~~~~~05|Skills|Axe-mastery +[[[[[BAxe-mastery] +This skill is a sub-skill of the Weaponmastery skill. It affects your ability +to use axes. Spending 1 skill point on your Axe-mastery skill adds 0.25 bonus +skill points to your Weaponmastery skill and adds 0.07 bonus skill points to +your Combat skill. +~~~~~06|Skills|Hafted-mastery +[[[[[BHafted-mastery] +This skill is a sub-skill of the Weaponmastery skill. It affects your ability +to use hafted weapons (e.g. whips & maces). Spending 1 skill point on your +Hafted-mastery skill adds 0.25 bonus skill points to your Weaponmastery skill +and adds 0.07 bonus skill points to your Combat skill. + +Stunning-blows is a sub-skill of Hafted-mastery. +~~~~~53|Skills|Stunning-blows +[[[[[BStunning-blows] +This skill is a sub-skill of the Hafted-mastery skill. It affects your ability +to stun opponents when doing critical hits with a hafted weapon that weighs +more than 5 lbs. Spending one skill point on your Stunning-blows skill also +increases your Hafted-mastery skill by 0.05 skill points. +~~~~~07|Skills|Polearm-mastery +[[[[[BPolearm-mastery] +This skill is a sub-skill of the Weaponmastery skill. It affects your ability +to use polearms (e.g. pikes & halberds). Spending 1 skill point on your +Polearm-mastery skill adds 0.25 bonus skill points to your Weaponmastery skill +and adds 0.07 bonus skill points to your Combat skill. + +Investing in the Polearm-mastery skill? You might be interested in the +*****ability.txt*10[Far reaching attack] ability. +~~~~~08|Skills|Archery +[[[[[BArchery] +This skill is a sub-skill of the Combat skill. It affects your general +ability to use ranged weapons of all sorts. Spending one skill point on your +Archery skill adds 0.5 bonus skill points to your Combat skill. + +Investing in the Archery skill? You might be interested in the +*****ability.txt*07[Ammo creation] ability. + +Sub-skills of Archery include Sling-mastery, Bow-mastery, Crossbow-mastery +and Boomerang-mastery. +~~~~~09|Skills|Sling-mastery +[[[[[BSling-mastery] +This skill is a sub-skill of the Archery skill. It affects your ability to +use Slings. Spending 1 skill point on your Sling-mastery skill adds 0.25 +bonus skill points to your Archery skill and 0.07 bonus skill points to your +Combat skill. +~~~~~10|Skills|Bow-mastery +[[[[[BBow-mastery] +This skill is a sub-skill of the Archery skill. It affects your ability to +use both Long and Short Bows. Spending 1 skill point on your Bow-mastery +skill adds 0.25 bonus skill points to your Archery skill and 0.07 bonus skill +points to your Combat skill. +~~~~~11|Skills|Crossbow-mastery +[[[[[BCrossbow-mastery] +This skill is a sub-skill of the Archery skill. It affects your ability +to use both Heavy and Light Crossbows. Spending 1 skill point on your +Crossbow-mastery skill adds 0.25 bonus skill points to your Archery skill +and 0.07 bonus skill points to your Combat skill. +~~~~~12|Skills|Boomerang-mastery +[[[[[BBoomerang-mastery] +This skill is a sub-skill of the Archery skill. It affects your ability to +use all boomerangs. Spending 1 skill point on your Boomerang-mastery skill +adds 0.25 bonus skill points to your Archery skill and 0.07 bonus skill +points to your Combat skill. +~~~~~13|Skills|Barehand-combat +[[[[[BBarehand-combat] +This skill is a sub-skill of the Combat skill. It affects your general ability +to fight using martial arts. In order to utilise it, you must be capable of +using a weapon in the first place, but choose not to. Spending 1 skill point +on your Barehand-combat skill adds 0.5 bonus skill points to your Combat skill. +Barehand-combat fighters develop stronger and faster attacks, and also gain +speed bonuses, as they advance in skill. However, they cannot use this skill +whilst wearing heavy armour. +~~~~~61|Skills|Bearform-combat +[[[[[BBearform-combat] +This skill is a sub-skill of the Combat skill. It affects your ability to fight +while in the form of a bear. In order to utilise it, you must be in bearform. +*****r_beorn.txt*0[Beornings] are the adventurers most likely to use this form of skill. +~~~~~58|Skills|Boulder-throwing +[[[[[BBoulder-throwing] +This skill is a sub-skill of the Combat skill. It affects your ability to +throw boulders and make them from granite walls. Spending 1 skill point on +your Boulder-throwing skill adds 0.4 bonus skill points to your Combat skill. +~~~~~50|Skills|Antimagic +[[[[[BAntimagic] +This skill is a sub-skill of the Combat skill. It generates a field around +the character within which magic cannot work. As such, it can be very useful +to prevent monsters from casting offensive spells against you or from +teleporting away from you just before you kill them - but it will also prevent +you from casting spells, or teleporting away when they've almost killed you! +It also inhibits your ability to do magic, affecting *all* the magic and +spirituality sub-skills. + +This skill does not affect your ability to use scrolls and potions, but other +items that require [Self]Magic-Device are affected. At higher levels you gain +the ability to detect traps and disrupt all teleportation. +~~~~~14|Skills|Sneakiness +[[[[[BSneakiness] +The sneakiness skill affects your searching and perception abilities. + +Sub-skills of Sneakiness include Stealth, Disarming, Trapping, Backstab, +Stealing and Dodging. +~~~~~15|Skills|Stealth +[[[[[BStealth] +This skill is a sub-skill of the Sneakiness skill. It affects your ability +to move around the dungeon quietly so that you are not noticed by its +inhabitants. Spending 1 skill point on your Stealth skill adds 0.15 bonus +skill points to your Sneakiness skill. +~~~~~16|Skills|Disarming +[[[[[BDisarming] +This skill is a sub-skill of the Sneakiness skill. It affects your ability +to safely disarm any traps you find. Spending 1 skill point on your Disarming +skill adds 0.1 bonus skill points to your Sneakiness skill. + +Investing in the Disarming skill? You might be interested in the *****ability.txt*11[Trapping] +ability. +~~~~~18|Skills|Backstab +[[[[[BBackstab] +This skill is a sub-skill of the Sneakiness skill. It affects your ability +to sneak up on monsters and do extra damage to them before they wake up. +It also affects monsters who have turned to flee from you. Spending 1 skill +point on your Backstab skill adds 0.05 bonus skill points to your Sneakiness +skill. +~~~~~19|Skills|Stealing +[[[[[BStealing] +This skill is a sub-skill of the Sneakiness skill. It affects your ability +to steal items from monsters and shops. Be careful when stealing from shops; +if you're caught, the shopkeeper will close his doors to you and not open +them again. I have heard that shop keepers do not stay in one shop forever +though. Spending 1 skill point on your Stealing skill adds 0.15 bonus skill +points to your Sneakiness skill. +~~~~~20|Skills|Dodging +[[[[[BDodging] +This skill is a sub-skill of the Sneakiness skill. It affects your ability +to dodge out of the way of monster blows and bolts. The less armour you wear +and the less you carry, the greater your chance of dodging a blow. Rings and +amulets do not affect your chance to dodge, but full armour will almost render +the effect of the skill obsolete. Spending 1 skill point on your Dodging skill +adds 0.1 bonus skill points to your Sneakiness skill. +~~~~~21|Skills|Magic +[[[[[BMagic] +The Magic skill affects your general use of magic items, the amount of mana +you can handle, and in general your ability to do magic. It can also affect +the strength of wands and staffs. + +Investing in the Magic skill? You might be interested in the *****ability.txt*04[Perfect Casting] +ability. + +Sub-skills include: Magic-device, Spell-power, Sorcery, Mana, Fire, Water, Air, +Earth, Meta, Conveyance, Divination, Temporal, Mind, Nature, Udun, Demonology, +Necromancy, Runecraft, Thaumaturgy, and Alchemy. +~~~~~54|Skills|Magic-device +[[[[[BMagic-device] +This skill is a sub-skill of the Magic skill. It eases the use of magical +devices, such as wands, staves, and rods, and boosts the casting level of spells +stored in a wand or a staff. *****magic.txt*02[More on this]. It also helps pseudo-id of magic +objects. Spending 1 skill point on your Magic-device skill adds 0.07 bonus skill +points to your Magic skill. +~~~~~22|Skills|Spell-power +[[[[[BSpell-power] +This skill is a sub-skill of the Magic skill. It boosts the casting level of +most spells you are capable of casting. For example, if you have level one in +the mana school, you could cast "Manathrust". For every 2.5 skill levels of +Spell-power, Manathrust becomes more powerful, adding +1 casting level to the +spell. Note that this is not exactly the same as certain magic items which +boost spell power. Spending 1 skill point on your Spell-power skill adds 0.2 +bonus skill points to your Magic skill. + +[[[[[BThis skill only affects the 11 primary schools] (Mana, Earth, Air, Fire, +Water, Meta, Mind, Temporal, Conveyance, Divination and Nature), as well as +Geomancy and the spells granted by the Gods. +~~~~~23|Skills|Sorcery +[[[[[BSorcery] +This skill is a sub-skill of the Magic skill. It allows you to access any +spell in the 11 schools up to the sorcery skill level. For example, if you +have a sorcery skill of 1, you could cast "Manathrust", which is a level 1 +mana school spell; and "Phase Door", which is a level 1 conveyance school +spell. Spending 1 skill point on your Sorcery skill adds 0.2 bonus skill +points to your Magic skill. + +[[[[[BThis skill only affects the 11 primary schools] (Mana, Earth, Air, Fire, +Water, Meta, Mind, Temporal, Conveyance, Divination and Nature). + +However, handling that much magic is hazardous to your health, and as such +reduces both your hit points and your fighting ability. Any ability in sorcery +affects your Weaponmastery, Archery, Barehand-combat and gives a negative +percentage modifier to your total hit points, equal to the level of your +sorcery skill (i.e. if sorcery is 12.500, hit points get modified by -12.5%). +~~~~~24|Skills|Mana +[[[[[BMana] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_mana.txt*0[mana] school, and as it increases so does the casting level of +spells already attained in the school. For example, if you have level 1 in +the mana school, you could cast "Manathrust" at a casting level of 1. For +every skill level you add to Mana, Manathrust will become more powerful, +adding 1 casting level to the spell. Spending 1 skill point on your Mana +skill adds 0.1 bonus skill points to your Magic skill. +~~~~~60|Skills|Geomancy +[[[[[BGeomancy] +This skill is a subskill of the Magic skill. It gives access to spells +within the *****m_geoman.txt*0[Geomancy] school, and as it increases so does the casting level of +spells already attained in the school. Most spells from this school rely +on the Fire, Water, Air and Earth skills as well. Spending 1 skill point +on your Geomancy skill adds 0.45 bonus skill points to your Fire, Water, +Air and Earth skills. +~~~~~25|Skills|Fire +[[[[[BFire] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_fire.txt*0[fire] school, and as it increases so does the casting level of +spells already attained in the school. Spending 1 skill point on your Fire +skill adds 0.1 bonus skill points to your Magic skill. +~~~~~26|Skills|Water +[[[[[BWater] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_water.txt*0[water] school, and as it increases so does the casting level of +spells already attained in the school. Spending 1 skill point on your Water +skill adds 0.1 bonus skill points to your Magic skill. +~~~~~27|Skills|Air +[[[[[BAir] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_air.txt*0[air] school, and as it increases so does the casting level of +spells already attained in the school. Spending 1 skill point on your Air +skill adds 0.1 bonus skill points to your Magic skill. +~~~~~28|Skills|Earth +[[[[[BEarth] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_earth.txt*0[earth] school, and as it increases so does the casting level of +spells already attained in the school. Spending 1 skill point on your Earth +skill adds 0.1 bonus skill points to your Magic skill. +~~~~~29|Skills|Meta +[[[[[BMeta] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_meta.txt*0[meta] school, and as it increases so does the casting level of +spells already attained in the school. Spending 1 skill point on your Meta +skill adds 0.1 bonus skill points to your Magic skill. +~~~~~30|Skills|Conveyance +[[[[[BConveyance] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_convey.txt*0[conveyance] school, and as it increases so does the casting level +of spells already attained in the school. Spending 1 skill point on your +Conveyance skill adds 0.1 bonus skill points to your Magic skill. +~~~~~31|Skills|Divination +[[[[[BDivination] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_divin.txt*0[divination] school, and as it increases so does the casting level +of spells already attained in the school. Spending 1 skill point on your +Divination skill adds 0.1 bonus skill points to your Magic skill. +~~~~~32|Skills|Temporal +[[[[[BTemporal] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_tempo.txt*0[temporal] school, and as it increases so does the casting level +of spells already attained in the school. Spending 1 skill point on your +Temporal skill adds 0.1 bonus skill points to your Magic skill. +~~~~~33|Skills|Mind +[[[[[BMind] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_mind.txt*0[mind] school, and as it increases so does the casting level of +spells already attained in the school. Spending 1 skill point on your Mind +skill adds 0.1 bonus skill points to your Magic skill. +~~~~~34|Skills|Nature +[[[[[BNature] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_nature.txt*0[nature] school, and as it increases so does the casting level of +spells already attained in the school. Spending 1 skill point on your Nature +skill adds 0.1 bonus skill points to your Magic skill. + +Investing in the Nature skill? You might be interested in the *****ability.txt*03[Tree Walking] +ability. +~~~~~48|Skills|Udun +[[[[[BUdun] +This skill is a sub-skill of the Magic skill. It gives access to spells +within the *****m_udun.txt*0[Udun] school, and is available only to worshippers of Melkor. +As it increases so does the casting level of spells already attained in the +school. Spending 1 skill point on your Udun skill adds 0.1 bonus skill +points to your Magic skill. +~~~~~52|Skills|Demonology +[[[[[BDemonology] +This skill is a sub-skill of the Magic skill. *****m_demono.txt*0[Demonology] gives access to spells +contained within special Demon-blades, -shields and -horns (helms), and as it +increases so does the casting level of spells already attained in the school. +This skill is available only to Demonologists, or those sufficiently +corrupted with demon-like powers. Spending 1 skill point on your Demonology +skill adds 0.1 bonus skill points to your Magic skill. +~~~~~35|Skills|Necromancy +[[[[[BNecromancy] +This skill is a sub-skill of the Magic skill. It grants access to *****m_necrom.txt*0[necromancy] +spells. This is the base skill of the Necromancer class. Spending 1 skill +point on your Necromancy skill adds 0.04 bonus skill points to your Magic skill. + +Investing in the Necromancy skill? You might be interested in the +*****ability.txt*08[Touch of Death] and *****ability.txt*12[Undead Form] abilities. +~~~~~36|Skills|Runecraft +[[[[[BRunecraft] +This skill is a sub-skill of the Magic skill. This is the base skill of the +Runecrafter class. Spending 1 skill point on your Runecraft skill adds 0.12 +bonus skill points to your Magic skill. +~~~~~37|Skills|Thaumaturgy +[[[[[BThaumaturgy] +This skill is a sub-skill of the Magic skill. Each level of *****m_thaum.txt*0[thaumaturgy] gives +a few random attack spells that can be cast without the use of spell books of +any sort. However, once learned these spells do not gain in levels as the +thaumaturgy skill or the spell-power skills are increased. Spending 1 skill +point on your Thaumaturgy skill adds 0.06 bonus skill points to your Magic +skill. +~~~~~49|Skills|Alchemy +[[[[[BAlchemy] +The Alchemy skill affects your ability to extract and use essences to create +magical items. + +Investing in the Alchemy skill? You might be interested in the *****ability.txt*09[Artifact Creation] +ability. +~~~~~38|Skills|Spirituality +[[[[[BSpirituality] +The spirituality skill influences things which have a "helping hand" from the +Gods, like your saving throw, and the general spirituality skills. + +Sub-skills of Spirituality are Prayer, Mindcraft and Music. +~~~~~39|Skills|Prayer +[[[[[BPrayer] +This skill is a sub-skill of the Spirituality skill. It affects what level of +your *****gods.txt*0[God's] special magic you can access (and what levels of the additional +schools that each God also provides). Spending 1 skill point on your Prayer +skill adds 0.1 bonus skill points to your Spirituality skill and 0.1 bonus +skill points to your Magic skill. +~~~~~41|Skills|Mindcraft +[[[[[BMindcraft] +This skill is a sub-skill of the Spirituality skill. It affects what level of +*****m_mindcr.txt*0[Mindcrafter powers] you can access, which is done without books and is +available under the "m" menu. Spending 1 skill point on your Mindcraft skill +adds 0.1 bonus skill points to your Spirituality skill and 0.1 bonus skill +points to your Magic skill. +~~~~~59|Skills|Music +[[[[[BMusic] +This skill is a sub-skill of the Spirituality skill. It affects what level of +*****m_music.txt*0[Musical songs] you can access through instruments. This power +is available under the "m" menu. Spending 1 skill point on your Music skill +adds 0.1 bonus skill points to your Spirituality skill and 0.1 bonus skill +points to your Magic skill. +~~~~~42|Skills|Monster-lore +[[[[[BMonster-lore] +The monster-lore skill affects your general ability at the monster related +skills. It determines how much experience you will gain if your *****dungeon.txt*18[pets] kill a +monster, and how many companions you can have. At skill level 12, it allows +you to turn a pet into a loyal companion. + +Sub-skills of Monster-lore are Summoning, Corpse-preservation, Possession, +Symbiosis, and Mimicry. +~~~~~43|Skills|Summoning +[[[[[BSummoning] +This skill is a sub-skill of the Monster-lore skill. It affects your ability +to create "totems" and use them to summon monsters to your aid. Spending 1 +skill point on your Summoning skill adds 0.1 bonus skill points to your +Monster-lore skill. +~~~~~44|Skills|Corpse-preservation +[[[[[BCorpse-preservation] +This skill is a sub-skill of the Monster-lore skill. It affects your ability +to kill monsters without destroying their bodies, so the corpses will be +available to use. Spending 1 skill point on your Corpse-preservation skill +adds 0.1 bonus skill points to your Monster-lore skill. +~~~~~45|Skills|Possession +[[[[[BPossession] +This skill is a sub-skill of the Monster-lore skill. It affects your ability +to possess a dead monster's corpse. Spending 1 skill point on your Possession +skill adds 0.1 bonus skill points to your Monster-lore skill. +~~~~~46|Skills|Symbiosis +[[[[[BSymbiosis] +This skill is a sub-skill of the Monster-lore skill. It affects your ability +to go into symbiosis with monsters that cannot move, and to cast *****m_symbio.txt*0[Symbiotic] +spells. Spending 1 skill point on your Symbiosis skill adds 0.1 bonus skill +points to your Monster-lore skill. +~~~~~47|Skills|Mimicry +[[[[[BMimicry] +This skill is a sub-skill of the Monster-lore skill. It affects your ability +to use cloaks of mimicry to change form and to cast *****m_mimic.txt*0[Mimicry spells]. +Spending 1 skill point on your Mimicry skill adds 0.1 bonus skill points to +your Monster-lore skill. diff --git a/lib/mods/theme/help/spoil_faq.txt b/lib/mods/theme/help/spoil_faq.txt new file mode 100644 index 00000000..fd3a0f42 --- /dev/null +++ b/lib/mods/theme/help/spoil_faq.txt @@ -0,0 +1,63 @@ +|||||oy +~~~~~01|Help|Spoiled FAQ +~~~~~02|FAQ - contains spoilers +#####R ToME Spoiler FAQ +#####R Updated for version 2.3.x + +#####G------------------------------------------------------------------------------ + +This page contains significant spoilers. Don't browse it unless you want some +parts of the game ruined, but don't expect the spoilers to spoil you completely! + +~~~~~07|Spoilers|Lothlorien Poisoned water quest +#####G------------------------------------------------------------------------------ +#####GQ: I'm trying to find the Poisoned water quest at Lothlorien, but cannot +#####G find the quest entrance! + +A: This quest is located in the wilderness. To the west of Lothlorien are 4 +water squares in an upside down L shape. One of these squares will contain the +quest. (Viewed from the Wilderness map). There is no yellow > sign, so don't +bother looking for one. +~~~~~20|Spoilers|God Quest - directions +~~~~~23|Gods|Quest - Spoilers +#####G------------------------------------------------------------------------------ +#####GQ: I've been given directions to a temple by my God but can't find the +#####G temple anywhere! + +A: It [[[[[BIS] there. However, your god's idea of compass directions that are +not directly on the 4 main axes are probably slightly less acurate than your +idea. In other words, if your god says it is South-East, s/he means it is +somewhere in the quadrant that is between the south and east axes. +~~~~~21|Spoilers|God Quest - relic +#####G------------------------------------------------------------------------------ +#####GQ: Where is the relic by god was talking about? I've looked in the lost +#####G temple and can't find it anywhere! + +A: It [[[[[BIS] there. However, when your god told you to look for it VERY +carefully, s/he meant it. Regardless of your game settings, the relic will only +be created once in the temple, at a random place. If you have searched the +whole temple once over, and not located it, then you have missed it, and it is +lost forever. Each temple has 5 dungeon levels, and the relic might be on +any of these 5 levels. +~~~~~22|Spoilers|God Quest - how many? +#####G------------------------------------------------------------------------------ +#####GQ: Apparently my god has lost another piece of a relic and wants me to go +#####G find it again. How many of these are there? + +A: You can receive up to seven god quests, with the final piece yielding an +extra reward. However you will only receive extra quests if you have +sucessfully completed all the previous ones. +~~~~~23|Spoilers|Secret Valley +#####G------------------------------------------------------------------------------ +#####GQ: What's this Secret Valley place in the northern part of the wilderness? + +This is a stay-over from regular ToME, where that valley is the location of +Gondolin. In Theme, Gondolin is elsewhere, and the Secret Valley is simply a +cosmetic change to avoid confusion. + +~~~~~24|Spoilers|Erebor +#####G------------------------------------------------------------------------------ +#####GQ: Why can't I get past the first level of Erebor? + +Think back to "The Hobbit". What did Bilbo and his friends use to enter the Lonely +Mountain? Locating the town of Dale and asking the mayor might prove profitable... diff --git a/lib/mods/theme/help/spoiler.hlp b/lib/mods/theme/help/spoiler.hlp new file mode 100644 index 00000000..bc229852 --- /dev/null +++ b/lib/mods/theme/help/spoiler.hlp @@ -0,0 +1,18 @@ +|||||oy +~~~~~01|Spoilers +#####RWelcome to the Angband Online Spoiler System. +#####R============================================= + +Please choose one of the following online spoiler files: + + *****/acorspoil.txt*0[(a) Corruptions] + *****/bdunspoil.txt*0[(b) Dungeons] + *****/cessences.txt*0[(c) Essence Spoiler] + *****/dinscrip.txt*0[(d) Floor Inscriptions] + *****/eluckspoi.txt*0[(e) Luck] + *****/ffatespoi.txt*0[(f) Fates] + *****/gwishing.txt*0[(g) Wishing] + *****/hspoil_faq.txt*0[(h) Spoiled FAQ] + + + *****/zhelp.hlp*0[(z) Main Help menu] diff --git a/lib/mods/theme/help/tome_faq.txt b/lib/mods/theme/help/tome_faq.txt new file mode 100644 index 00000000..756ce639 --- /dev/null +++ b/lib/mods/theme/help/tome_faq.txt @@ -0,0 +1,381 @@ +|||||oy +~~~~~01|Help|FAQ - Spoiler free +~~~~~02|FAQ - Spoiler free +#####R ToME FAQ +#####R Updated for version 2.3.x + +#####G------------------------------------------------------------------------------ + +#####R=== Differences Between ToME and Vanilla Angband === + +The first main difference a new player to ToME will need to be aware of is +that it has implemented a skills based system. Instead of the adventurer +automatically improving in his abilities as he becomes more experienced, +he gets 6 skill points to spend on his skills, allowing the player to +customise what type of character she will play. See the *****skills.txt*0[skills] help file +for details. + +A second major difference is that the main dungeon from Angband has been split +into 4 "dungeons", each of which covers a different portion of the Angband +dungeon's levels. Each of these 4 dungeons is located either in or near one of +the four main towns so that the character can keep stocked up on supplies. As +the adventurer advances in ability, he will need to travel overland to the next +town/dungeon, which is most easily carried out using the wilderness map ("<" +from town level). As well as these main places, there are a number of +additional dungeons which the character may or may not choose to enter, which +can have guardians, contain specific artifacts, or just be used as an +alternative place to enjoy gaining experience. Note that not all of the places +are actually "dungeons" - some are caves, forests, etc. + +ToME also offers the player the ability to undertake a series of quests. +Random quests can be specified during start-up, and involve rescuing a princess +from a group of monsters within the dungeon, or recovering a lost sword from +(you guessed it...) a group of monsters. If you do not wish to play with +random quests, simply specify "0" when asked how many you want during character +generation. Other "fixed" quests are also available from the towns (whether +random quests are enabled or not), usually given by the town leaders upon the +request of the adventurer. It is not required for any adventurer to undertake +the fixed quests, but they can result in some nice rewards. + +The third main difference between Vanilla Angband and ToME is the difference +in character classes and races, as well as a very different magic system. +See the help files on *****birth.txt*0[Creating a character] and the *****magic.txt*0[magic] system. +Class abilities (generally referred to as skills) are generally accessed +through the 'm' command. Most racial abilities, or corruptions, are accessed +through the "U" command. + +To balance the expansion in things like player abilities and customisation, the +list of both monsters and items has also been expanded. Be warned that items +which were by default safe in Vanilla are not necessarily safe in ToME (a +certain early artifact comes to mind here...), and picking on defenceless +creatures is frowned upon.... + +Happy adventuring! +~~~~~03|Altars +~~~~~04|Gods|Altars +#####G------------------------------------------------------------------------------ +#####GQ: How do I use the altars (the 'O's) I see in the dungeon? + +A: ToME introduces a new system of gods. + +You can find altars only in Lothlorien and in the dungeon. +The ones on the surface are dedicated to the good Valar (Eru, Manwe, Tulkas and +Yavanna), while altars found in the dungeons are "sacred" for Melkor. +You can use altars to convert yourself to the service of a specific Vala by +using the "O" command while standing on them. Beware, this works only if you +don't already have a God, and as a new convert, your God won't like you that +much. Melkor also uses his altars as a mean of collecting sacrifices from his +devotees; this function is likewise accomplished by the "O" command. + +Read *****gods.txt*0[gods.txt] for more information about Gods. +~~~~~05|Fountains +#####G------------------------------------------------------------------------------ +#####GQ: How do I use the fountains (the '_'s) I see in the dungeon? + +A: Fountains in ToME act like potions, but can only be identified by +drinking from them. Each one can hold between 3 and 12 doses of the potion. +Quaffing from a fountain can be done by using the 'H' command (in the standard +keyset) and answering 'Q' at the prompt. + +You can also fill empty bottles at a fountain (enabling you to identify the +potion and hence the type of fountain) by using the 'H' command and answering +'F' at the prompt. The game will then ask you to choose bottles and how many +bottles you want to fill. You can find empty bottles on the dungeon and +drinking pints of fine ale/wine will give you emtpy bottles; if you are +trained in Alchemy, you can reuse bottles after quaffing potions as well. + +#####G------------------------------------------------------------------------------ +#####GQ: I got killed by a Great Wyrm of Power at 50'!!! What happened? + +A: You killed a defenceless creature. I told you that it was frowned upon! +~~~~~18|Artifacts that activate but I cannot wear or wield +~~~~~17|Strange items +#####G------------------------------------------------------------------------------ +#####GQ: I've found some strange items like a Red Tome, a Voodoo Doll, ... +#####G What can I do with them? + +A: You've found an unusual artifact that cannot be wielded, but always +has a sometimes-useful activation. It will not be listed in the known +artifact list and its activation is chosen randomly. It would probably be +wise for this kind of artifact be *identified* before use, as the +activation can be something very nasty.... + +To activate it, use the normal Activation command, but when prompted for which +item to activate change to the backpack instead of wielded equipment. +~~~~~10|Essences +~~~~~11|Runes +#####G------------------------------------------------------------------------------ +#####GQ: I keep coming across "essences" and "runes". What are they? + +Essences are the *****c_alchem.txt*0[Alchemist's] friend, and you can only use them if you +have access to the *****skills.txt*49[Alchemy] skill. +Runes are used to cast and store spells of varying types. *****c_runecr.txt*0[Runecrafters] are the +class who are most proficient at using these. You can only use them if you +have access to the *****skills.txt*36[Runecrafting] skill. +~~~~~12|Homes +#####G------------------------------------------------------------------------------ +#####GQ: Where can I store all my equipment? Theere's not enough room in my +#####Ginventory? And what happened to the thieves quest in Bree? + +Nor is there supposed to be enough room in your backpack. It's not +bottomless you know! If you go talk to the Mayor in Bree, he might let you know +about a slight problem that there's been in town. If you can clear up the +problem, you may find yourself with somewhere extra to keep your stuff. I've +heard tell that there are similiar problems in other towns in Middle-Earth. +~~~~~13|Fates|Prophets +#####G------------------------------------------------------------------------------ +#####GQ: I spent 500 gp at the Prophet but she said nothing. Is that a bug ? + +A: No. Nor is it because Prophets are swindlers. She said nothing +because you have no fate at this moment. You gain fates while playing, and +will be warned by a message such as "You feel your fate has changed". A fate +can be useless like finding a broken skull at level 30, deadly like dying at +level 56, or really useful like never dying by the hand of a mortal. +~~~~~14|Mathilde +#####G------------------------------------------------------------------------------ +#####GQ: Who is Mathilde, the Science Student whom I see every so often in the +#####G town? + +A: Most of the time she laughs and giggles. She has no loot on her, and +she's never done you any harm. So leave her be - even if she should +happen to shout "Drop dead, creep!" +~~~~~15|Wrists hurting +#####G------------------------------------------------------------------------------ +#####GQ: My wrists hurt a lot when playing the game. Should I take precautions? + +A: Yes, you should. Repetitive strain on wrists (which results from a badly +placed keyboard, for example) can lead to serious injury of the wrist ligaments +called Carpal Tunnel Syndrome. If you feel your wrists are strained, here is +an exercise posted by Jason Maskell in rec.games.roguelike.angband which might +help: + +Hold your arms out horizontally, make a fist, and then point the fist towards +the floor, as much as you can. This will stretch one side's tendons. Hold for +5 seconds. Then make a flat hand and hold it level with your arm, hold for 5 +seconds. Now splay your fingers and attempt to make your hand point toward the +ceiling (this one is hard, so don't push it too much). You should feel your +tendons stretching. Repeat this a few times. Take frequent breaks and do this +if it starts to hurt a little bit. I was sliding very fast towards CTS and this +corrected it. +~~~~~16|Void jumpgates +#####G------------------------------------------------------------------------------ +#####GQ: When I stand on void jumpgates I'm never teleported away, what's wrong? + +A: Void jumpgates are not automatic. You must press '>' while standing +on one to activate it. + +#####G------------------------------------------------------------------------------ +#####GQ: When it panic saves it reloads an old savefile !! + +A: Now the panic saves use a different file to save, savefile.pnc. +This file will be loaded first, if present, when the game is started. +If it loads successfully, save the game immediately. Otherwise, delete +the panic save, and your old (non-panic) savefile should be safe. + +~~~~~08|Monsters|They are talking to me! +#####G------------------------------------------------------------------------------ +#####GQ: Farmer Maggot / Melinda Proudfoot keep shouting at me, and I cannot +#####G kill them. + +A: Both these people need to talk to you about something. Have a chat with them +(check the file *****command.txt*96[command.txt] for how to chat). +~~~~~09|Sentient weapons +#####G------------------------------------------------------------------------------ +#####GQ: I have found a sentient weapon, it says it has access to the realms +#####G of Earth and Fire. How do I use these realms? + +A: You don't actually 'use' them as such. If a weapon is sentient it means it +gains experience itself as it delivers killing blows. As it levels up it has +the chance to gain pluses to hit and to damage, and also powers from any of the +available 'realms'. For instance, the realm of fire gives the chance to gain +resistance to fire, or fire branding on your weapon. The realm of earth has a +chance to confer extra attacks or the power of causing earthquakes and so on. +~~~~~24|Fumblefingers quests +~~~~~25|Abbreviations|FF +#####G------------------------------------------------------------------------------ +#####GQ: What or who is Fumblefingers? How do I get his quests? + +A: FF is short for Fumblefingers, the name that some players give to the +adventurer who keeps having his sword stolen by monsters and asking you to +find it for him. So named because he often seems to lose it to molds and +other creatures you wouldn't expect to be able to pickpocket! During birth +you'll be asked to specify a number of random quests you would like to +attempt to complete. Some of these quests will take the form of princess +quests, others will be fumble-finger quests. If you complete the task he +sets you sucessfully, he'll offer to join you as a companion. If you do not +want him to join you, he'll offer to teach you some new skills. Quite handy. +~~~~~26|Random quests are not working. +#####G------------------------------------------------------------------------------ +#####GQ: Where has the option gone to set the number of random quests? +#####G Why aren't there any after the Barrow-downs? + +A: Turning on either of the options "Allow permanent dungeon levels" or "Always +create special rooms" will disable random quests. Random quests can only be +found in the four main dungeons (Barrowdowns, Mirkwood, Mordor and Angband). +~~~~~27|Weird display +~~~~~28|Floor tiles displaying incorrectly +#####G------------------------------------------------------------------------------ +#####GQ: How do I get the dots to show up on floor tiles in Windows XP? I've tried +#####G changing the tile character to the brighter dot. Toggling 'Bizarre Display' +#####G mode helped with the trailing @@@@@@@@@@@@@@@@@ problem. Any suggestions? I +#####G gave up a long time ago and play with graphics tiles now, but I'd like to be +#####G able to fix this. + +A: In the file ./lib/pref/font_win.prf, either remove or comment out with # the +lines that end in /0x1F, e.g. +# open floor +# F:1:0x01/0x1F +Another possibility is to manually change the symbols used with the '%' +command, but the previous solution is faster. +~~~~~29|Dark grey things are difficult to see +#####G------------------------------------------------------------------------------ +#####GQ: Many things are written in a dark grey color which is next to impossible to +#####G read against a black background. Also, some monsters appear in dark grey and +#####G are easy to miss! What can I do to fix this? + +A: Fix the gamma control of your display. If your display software does not +include such a tool, access the 'Interact with Colors' screen in ToME via +shift+7, type '4', and modify the gamma correction there. +~~~~~30|Game 'balance' +#####G------------------------------------------------------------------------------ +#####GQ: Why don't you make X class less powerful or Y class more powerful? + +A: In ToME the player determines how hard the game is. Classes, races, and +subraces are neither meant nor desired to be equal in game difficulty. So no, +we won't make Axemasters more powerful just to "balance them out", nor will we +make Sorcerors weaker. +~~~~~31|I keep dying! +#####G------------------------------------------------------------------------------ +#####GQ: Why do I always start in a terribly difficult, very deep dungeon instead of +#####G a town? Is the game really this hard? + +A: You have chosen a "Lost soul" character subrace. That's where Lost souls +start. They tend to die very quickly, so don't choose them if you're new to +ToME. +~~~~~32|Invisible character +#####G------------------------------------------------------------------------------ +#####GQ: My character is invisible. That's great, but how do I know where she is if +#####G I can't see her?! + +A: You could seek for a way to see invisible things. +You could also go to game options: + 1. Type = (game options) + 2. Type 4 (efficiency options) + 3. Arrow down to 'hilite the player with the cursor' + 4. Type y to toggle the option to 'yes' +~~~~~33|Objects|Piles +#####G------------------------------------------------------------------------------ +#####GQ: I'm standing on a pile of items. How do I see what's in the pile without +#####G picking it all up, moving it, or destroying it all? +A: + 1. Stand on the pile in question + 2. Type shift + I (inspect) + 3. Type - (examine items on floor) + 4. Type * (expand list of items on floor) + 5. (as needed) Type letter associated with item to look at it more closely. + +#####G------------------------------------------------------------------------------ +#####GQ: If I'm standing on a pile of items. Is there a command to see if there is a +#####G stairway or jumpgate beneath the pile? + +A: Stairs/jumpgates obscured by clutter do still function. You are advised to +take a good hard look at your surroundings before creating lots of dungeon +clutter. + 1. You can pick up, move, or eliminate the pile. + 2. Press l (look), then select the square you wish to inquire about. Press +<enter>; it will scroll through everything on the ground, and eventually it +ends with "It is in a Void Jumpgate", or whatever. +~~~~~34|Character choice is too confusing +~~~~~36|Beginner strategy +#####G------------------------------------------------------------------------------ +#####GQ: What is a good starting character? + +A: Make sure to read the parchment you start the game with! + +If you're new to ToME, understand that your characters are going to die a lot. +Be prepared for that. In fact, take advantage of it by using the various +characters you run to experiment and learn the game's various facets. + +Try a warrior. A Dunadan Swordmaster is an excellent combination of race and +class. + +Try a priest. A Rohan Knight Paladin gives you some magic to go with strong +combat, but your terrible stealth will give you a tougher time in some respects. + +Try an archer. A Wood-elf Archer will have fewer hitpoints than you're used to, +but lets you use excellent ranged combat instead. Also note how your higher +stealth wakes up fewer monsters, letting you fight them more on your own terms. + +Try a mage. A Dark-elf Mage lets you keep using weapons, while getting a taste +of the various magic schools. You have even fewer hitpoints, though, so beware. + +Try another mage. A Hobbit Sorceror is a fun character, but the hitpoint +penalties make you need to be very careful. You get high-powered magic, though, +to more than make up for it. + +I would just add that for those who get frustrated in the early levels and want +to run a more powerful character that I think the three easiest combinations +are probably the Zombie Rohan Knight Unbeliever, the Thunderlord (or Vampire +Half-Ogre) Sorceror, and the High-Elf (or Deathmold if you can figure it out) +Possessor. Also, you might want to try a priest of Eru or Tulkas. Most of these +have low stealth, but should be pretty easy to play up to around level 30, and +they offer an attractive range of experiences for the new player. +~~~~~35|I STILL keep dying! +#####G------------------------------------------------------------------------------ +#####GQ: I'm getting killed a lot. Can you recommend some starting options to +#####G make my chances a little better? + +A: Realize that getting killed a lot is to be expected. Having said that, try +this. At character creation: + 1. Turn off "always generate very unusual rooms". + 2. Turn off joke monsters. + 3. Turn off "always make small levels". + 4. Regarding the number of random quests: See the Q/A below. + 5. Do not choose a Lost Soul character. + +Later, set these options: + 1. Turn on "expand the power of the look command". + 2. Turn on "allow some monsters to carry light". + 3. Turn on "map remembers all perma-lit grids". + 4. Turn on "map remembers all torch-lit grids". + 5. Turn off "monsters learn from their mistakes". + 6. Turn off "monsters exploit player weaknesses". + 7. Turn on "monsters behave stupidly". + 8. Turn off "allow unusually small dungeon levels". + 9. Turn off "allow empty 'arena' levels". + +~~~~~36|Random quests strategy +#####G------------------------------------------------------------------------------ +#####GQ: How many random quests should I choose? + +A: One big question a beginner is faced with is: How many (random) optional +quests to choose? + +I think this is another area where the beginner should mix it up. The early +items from princesses are a great benefit to beginners, but coming to rely on +those can be a problem when it comes time to enter deep dungeons and the real +nasty quests begin. + +Also high counts, especially 98 quests, can be very frustrating for a beginner +when it puts an especially difficult quest on dungeon level 1 or 2. + +~~~~~37|Anti-magic Amulets and the Anti-magic shell +#####G------------------------------------------------------------------------------ +#####GQ: Are Amulets of Anti-magic and the Anti-magic skill related? + +A: No. The Anti-magic shell of the Amulet of Anti-magic has nothing to do with +the Anti-magic field given off by the skill and Dark Swords. + +~~~~~38|Beornings and Bearform-combat +#####G------------------------------------------------------------------------------ +#####GQ: My Beorning character doesn't have Bearform-combat! Why? + +A: You cannot put points into Bearform-combat unless you are transformed +into a bear. Use the racial power ('U' in the original keyset, 'O' in +roguelike) to transform first. + +#####G------------------------------------------------------------------------------ +#####GQ: The game is so slow... + +A: Yeah :( +Try disabling the various options marked as (slow) diff --git a/lib/mods/theme/help/version.txt b/lib/mods/theme/help/version.txt new file mode 100644 index 00000000..501be7f6 --- /dev/null +++ b/lib/mods/theme/help/version.txt @@ -0,0 +1,354 @@ +|||||oy +~~~~~01|Development history +*****version.txt*01[The origins of ToME] +*****version.txt*02[Zangband History and Information] +*****version.txt*03[Brief Version History (of standard Angband)] +*****version.txt*04[A Posting from the Original Author (of Moria)] +*****version.txt*05[Previous Versions (outdated)] + + +#####R====== ToME Brief History ======= + +When Zangband came to its 2.2.0 version I (DarkGod) was an Angband winner and +I had been a C programmer for a long time, so I decided to take the sources +and to try to code my own variant. At this time I was reading the Pern +novels from Anne McCaffrey and I found them *VERY* good, so I decided to +include some elements of them into my variant from which it takes the name, +PernAngband. + +One hard thing to decide was on which Angband to base it. Although I didn't +like Zangband because of the Zelazny universe, which I found to be not very +Tolkienish, I chose it because of all the good things it had (especially +the race powers that I wasn't able to code at the time). So I removed +much of the Zelazny stuff and replaced it with Tolkien and Pernish stuff. +And so the history of PernAngband began with the version 2.9.9a. + +Now, in PernAngband 5.x.x, PernAngband is a thriving Angband variant +with plenty of unique features. + +Then came some legal problems with Anne McCaffrey estate and ubisoft and +I had to remove the Pern stuff, so the game got renamed to ToME, +the Troubles of Middle Earth. +~~~~~02 +#####R=== Zangband History and Information === + +The seeds of Zangband lie in an obsolete and long ago vanished PC variant +(somewhat misleadingly) dubbed Angband--. The variant was written by a +hopeless Angband addict (previously Moria veteran and winner) who got +bored with the standard monsters and wanted to introduce some new +monsters. Angband-- was based on the PC Angband 1.31 sources, and +it was set in Roger Zelazny's 'Amber' universe. + +Later this individual got a better computer and learned to code, and +produced the PC Zangband, and most Angband-- monsters survived into +PC Zangband 1.0. PC Zangband 1.0 was the first PC Angband to introduce +(simple, font-based) graphics, which were also used in the graphical +PC Angband 1.40. + +Yet this individual was still not cured of his addiction... his almost +as strong addiction to the Civilization style fantasy strategy game +'Master of Magic' inspired him to write a new magic system. The current +version of Zangband (2.*) incorporates this magic system, as well as +the best features from Angband-- and PC Zangband 1.0. It is based on +the Angband 2.8.1 sources (by Ben Harrison), and is therefore portable +to other systems (unlike the earlier versions which were for DOS-PC's +only). + +Incidentally, this person (me, Topi Ylinen) also thought that the +standard Angband monsters were too easy, which led him to introduce +such monsters as Death swords, Cyberdemons and Great Wyrms of Power... + +Special thanks -- The current version of Zangband might not have come into +existence without the significant help from these excellent Angband +programmers: + + Ben Harrison, for obvious reasons. + + Greg Wooledge, who pointed out a bug in the dos compiler, + which was preventing my progress with the first 2.* version + of Zangband and for various patches. + + Julian Lighton, who must have sent me more ideas, patches, and + bug reports than all the others together. + + Robert Ruehlmann, whose nice new main-dos.c enables SVGA + graphics and even windows in MS-DOS. + + Paul Sexton, who is responsible for about 50% of the new code + in 2.1.0. + + Heino Vander Sanden, who created the quest-code and + Dean Anderson, whose patch showed me the quickest way to + implement the quests. + + Adam Bolt, who created the new ZAngband tiles. + + Scott Bigham, for the S-Lang patch. + + Jeff Duprey for the new mutations. + + Leigh Silas Hanrihan for the new items. + + Benny S. Hofmann, Aram Harrow, Greg Harvey, Keldon Jones, + Graham Murray, Remco Gerlich, Tim Baker and many others + for bugreports, patches, bugfixes, and ideas. + + +ZAngband 2.1.0c was Topi's last version, he has got a job and +doesn't have enough time anymore to continue work on ZAngband. +He asked for a new maintainer and I was the one to take over the task. +May I introduce myself, my name is Robert Ruehlmann, I'm the creator +of the graphical Angband versions for DOS and webmaster of +"Thangorodrim - The Angband Page" ("http://www.thangorodrim.net"). +~~~~~03 +#####R=== Brief Version History (of standard Angband) === + +First came "VMS Moria", by Robert Alan Koeneke (1985). + +Then came "Umoria" (Unix Moria), by James E. Wilson (1989). + +In 1990, Alex Cutler and Andy Astrand, with the help of other students +at the University of Warwick, created Angband 1.0, based on the existing +code for Umoria 5.2.1. They wanted to expand the game, keeping or even +strengthening the grounding in Tolkien lore, while adding more monsters +and items, including unique monsters and artifact items, plus activation, +pseudo-sensing, level feelings, and special dungeon rooms. + +Over time, Sean Marsh, Geoff Hill, Charles Teague, and others, worked on +the source, releasing a copy known as "Angband 2.4.frog_knows" at some +point, which ran only on Unix systems, but which was ported by various +people to various other systems. + +Then Charles Swiger (cs4w+@andrew.cmu.edu) attempted to clean up the mess, +resulting in several versions, starting sometime around November, 1993, with +Angband 2.5.1 (more or less) and leading up to Angband 2.6.2 in late 1994. +Several people ported (the primarily Unix/NeXT centered) Angband 2.6.1 to +other platforms, including Keith Randall, who made a Macintosh port that +added support for color usage. Some of the changes during this period were +based on suggestions from the "net", PC Angband 1.40, UMoria 5.5, and some +of the Angband "variations", such as FAngband. + +Finally, I (Ben Harrison) took over in late 1994 when Charles Swiger left. +Initially my intention was simply to clean up what had become, after ten +years, a rather unholy mess, but the deeper I delved into the code, the +more it became apparent that drastic changes were needed, so, starting +with MacAngband 2.6.1, I began a more or less total rewrite, resulting, +eventually, in Angband 2.7.0, released around January first, 1995. + +Angband 2.7.0 was a very clean (but very buggy) rewrite that, among other +things, allowed extremely simple porting to multiple platforms, starting +with Unix and Macintosh, and by the time most of the bugs were cleaned up, +in Angband 2.7.2, including X11, and various IBM machines. Angband 2.7.4 +was released to the "ftp.cis.ksu.edu" site, and quickly gained acceptance, +perhaps helped by the OS2 and Windows and Amiga and Linux ports. Angband +2.7.5 and 2.7.6 added important capabilities such as macros and user pref +files, and continued to clean up the source. Angband 2.7.8 was designed +to supply another "stable" version that we can all give to our friends, +with new "help files" and "spoiler files" for the "online help", plus a +variety of minor tweaks and some new features. Angband 2.7.9 optimized +a few things, and tweaked a few other things, and cleaned up a few other +things, and introduced a few minor semantic changes. + +It is very hard to pin down, along the way from 2.6.2 to 2.7.0, and thence +to 2.7.8, exactly what was added exactly when. Most of these steps involved +so many changes as to make "diff files" not very useful, since often the diff +files were as long as the code itself. Most of the changes, with the notable +exception of the creation of the new "main-xxx.c" files for the various new +platforms, and a few other exceptions generally noted in the source, were +written by myself, either spontaneously, or, more commonly, as the result of +a suggestion or comment by an Angband player. So if you have any problems +with anything that you do not recognize from older versions, you can blame +them on me. And if you like the new features and such, you can send me a +brief little "thank you" email (to benh@phial.com) or something... + +The Official Angband Home Page ("http://www.phial.com/") +was created along with Angband 2.7.9 to serve as an up to date description +of any bugs found in various versions, and to list all of the people whose +email addresses I kept having to look up. + +~~~~~04 +#####R=== A Posting from the Original Author === + +From: koeneke@ionet.net (Robert Alan Koeneke) +Newsgroups: rec.games.roguelike.angband,rec.games.roguelike.moria +Subject: Early history of Moria +Date: Wed, 21 Feb 1996 04:20:51 GMT + +I had some email show up asking about the origin of Moria, and its +relation to Rogue. So I thought I would just post some text on the +early days of Moria. + +First of all, yes, I really am the Robert Koeneke who wrote the first +Moria. I had a lot of mail accussing me of pulling their leg and +such. I just recently connected to Internet (yes, I work for a +company in the dark ages where Internet is concerned) and +was real surprised to find Moria in the news groups... Angband was an +even bigger surprise, since I have never seen it. I probably spoke to +its originator though... I have given permission to lots of people +through the years to enhance, modify, or whatever as long as they +freely distributed the results. I have always been a proponent of +sharing games, not selling them. + +Anyway... + +Around 1980 or 81 I was enrolled in engineering courses at the +University of Oklahoma. The engineering lab ran on a PDP 1170 under +an early version of UNIX. I was always good at computers, so it was +natural for me to get to know the system administrators. They invited +me one night to stay and play some games, an early startrek game, The +Colossal Cave Adventure (later just 'Adventure'), and late one night, +a new dungeon game called 'Rogue'. + +So yes, I was exposed to Rogue before Moria was even a gleam in my +eye. In fact, Rogue was directly responsible for millions of hours of +play time wasted on Moria and its descendents... + +Soon after playing Rogue (and man, was I HOOKED), I got a job in a +different department as a student assistant in computers. I worked on +one of the early VAX 11/780's running VMS, and no games were available +for it at that time. The engineering lab got a real geek of an +administrator who thought the only purpose of a computer was WORK! +Imagine... Soooo, no more games, and no more rogue! + +This was intolerable! So I decided to write my own rogue game, Moria +Beta 1.0. I had three languages available on my VMS system. Fortran +IV, PASCAL V1.?, and BASIC. Since most of the game was string +manipulation, I wrote the first attempt at Moria in VMS BASIC, and it +looked a LOT like Rogue, at least what I could remember of it. Then I +began getting ideas of how to improve it, how it should work +differently, and I pretty much didn't touch it for about a year. + +Around 1983, two things happened that caused Moria to be born in its +recognizable form. I was engaged to be married, and the only cure for +THAT is to work so hard you can't think about it; and I was enrolled +for fall to take an operating systems class in PASCAL. + +So, I investigated the new version of VMS PASCAL and found out it had +a new feature. Variable length strings! Wow... + +That summer I finished Moria 1.0 in VMS PASCAL. I learned more about +data structures, optimization, and just plain programming that summer +then in all of my years in school. I soon drew a crowd of devoted +Moria players... All at OU. + +I asked Jimmey Todd, a good friend of mine, to write a better +character generator for the game, and so the skills and history were +born. Jimmey helped out on many of the functions in the game as well. +This would have been about Moria 2.0 + +In the following two years, I listened a lot to my players and kept +making enhancements to the game to fix problems, to challenge them, +and to keep them going. If anyone managed to win, I immediately found +out how, and 'enhanced' the game to make it harder. I once vowed it +was 'unbeatable', and a week later a friend of mine beat it! His +character, 'Iggy', was placed into the game as 'The Evil Iggy', and +immortalized... And of course, I went in and plugged up the trick he +used to win... + +Around 1985 I started sending out source to other universities. Just +before a OU / Texas football clash, I was asked to send a copy to the +Univeristy of Texas... I couldn't resist... I modified it so that +the begger on the town level was 'An OU football fan' and they moved +at maximum rate. They also multiplied at maximum rate... So the +first step you took and woke one up, it crossed the floor increasing +to hundreds of them and pounded you into oblivion... I soon received +a call and provided instructions on how to 'de-enhance' the game! + +Around 1986 - 87 I released Moria 4.7, my last official release. I +was working on a Moria 5.0 when I left OU to go to work for American +Airlines (and yes, I still work there). Moria 5.0 was a complete +rewrite, and contained many neat enhancements, features, you name it. +It had water, streams, lakes, pools, with water monsters. It had +'mysterious orbs' which could be carried like torches for light but +also gave off magical aura's (like protection from fire, or aggrivate +monster...). It had new weapons and treasures... I left it with the +student assistants at OU to be finished, but I guess it soon died on +the vine. As far as I know, that source was lost... + +I gave permission to anyone who asked to work on the game. Several +people asked if they could convert it to 'C', and I said fine as long +as a complete credit history was maintained, and that it could NEVER +be sold, only given. So I guess one or more of them succeeded in +their efforts to rewrite it in 'C'. + +I have since received thousands of letters from all over the world +from players telling about their exploits, and from administrators +cursing the day I was born... I received mail from behind the iron +curtain (while it was still standing) talking about the game on VAX's +(which supposedly couldn't be there due to export laws). I used to +have a map with pins for every letter I received, but I gave up on +that! + +I am very happy to learn my creation keeps on going... I plan to +download it and Angband and play them... Maybe something has been +added that will surprise me! That would be nice... I never got to +play Moria and be surprised... + +Robert Alan Koeneke +koeneke@ionet.net + +~~~~~05 +#####R=== Previous Versions (outdated) === + + + VMS Moria Version 4.8 +Version 0.1 : 03/25/83 +Version 1.0 : 05/01/84 +Version 2.0 : 07/10/84 +Version 3.0 : 11/20/84 +Version 4.0 : 01/20/85 + +Modules : + V1.0 Dungeon Generator - RAK + Character Generator - RAK & JWT + Moria Module - RAK + Miscellaneous - RAK & JWT + V2.0 Town Level & Misc - RAK + V3.0 Internal Help & Misc - RAK + V4.0 Source Release Version - RAK + +Robert Alan Koeneke Jimmey Wayne Todd Jr. +Student/University of Oklahoma Student/University of Oklahoma + + + Umoria Version 5.2 (formerly UNIX Moria) +Version 4.83 : 5/14/87 +Version 4.85 : 10/26/87 +Version 4.87 : 5/27/88 +Version 5.0 : 11/2/89 +Version 5.2 : 5/9/90 + +James E. Wilson, U.C. Berkeley + wilson@ernie.Berkeley.EDU + ...!ucbvax!ucbernie!wilson + +Other contributors: +D. G. Kneller - MS-DOS Moria port +Christopher J. Stuart - recall, options, inventory, and running code +Curtis McCauley - Macintosh Moria port +Stephen A. Jacobs - Atari ST Moria port +William Setzer - object naming code +David J. Grabiner - numerous bug reports, and consistency checking +Dan Bernstein - UNIX hangup signal fix, many bug fixes +and many others... + + + + +Copyright (c) 1989 James E. Wilson, Robert A. Keoneke + This software may be copied and distributed for educational, research, and + not for profit purposes provided that this copyright and statement are + included in all such copies. + +Umoria Version 5.2, patch level 1 + +Angband Version 2.0 Alex Cutler, Andy Astrand, Sean Marsh, Geoff Hill, + Charles Teague. + +Angband Version 2.4 : 5/09/93 + +Angband Version 2.5 : 12/05/93 Charles Swiger. + +Angband Version 2.6 : 9/04/94 + +Angband Version 2.7 : 1/1/95 Ben Harrison diff --git a/lib/mods/theme/help/whattome.txt b/lib/mods/theme/help/whattome.txt new file mode 100644 index 00000000..43ebb2e1 --- /dev/null +++ b/lib/mods/theme/help/whattome.txt @@ -0,0 +1,30 @@ +|||||oy +~~~~~01|ToME - a General Description +#####R /----------------------------------------\ +#####R < What is ToME? > +#####R \----------------------------------------/ + +Tales of Middle Earth (ToME) is a fantasy adventure game, based on the works +of Tolkien. Focusing on game-play rather than fancy graphics that get boring +after a week, ToME will keep you playing for years. + +Explore dozens of different dungeons including hundreds of randomly generated +levels filled with multitudes of different items and treasures. Fight off +hundreds of monsters and uniques from the stories in a complex fighting system. +Gain experience and learn skills; choose from the dozens of races and classes +available to the player; cast spells from simple teleportation spells to +advanced spells that can wipe out a whole army at once. It's the only game where +you can burn spell books by trudging in lava (unless you have gained immunity +from some armour), dry up rivers to cast mighty spells, strike at orcs with +blades attuned to slay them specifically, summon armies from a simple totem, +and even enter a symbiotic relationship with a mold! + +Explore dungeons, gain power, and save Middle-earth! + +The player will begin his adventure on the town level where he may acquire +supplies, weapons, armour, and magical devices by bartering with various shop +owners. After preparing for his adventure, the player can descend into the +dungeon near Bree where fantastic adventures await his coming! + +Make sure you read the parchment you are given when you start the game, and +read the in-game documentation. diff --git a/lib/mods/theme/help/wishing.txt b/lib/mods/theme/help/wishing.txt new file mode 100644 index 00000000..d16f5ae9 --- /dev/null +++ b/lib/mods/theme/help/wishing.txt @@ -0,0 +1,24 @@ +~~~~~01|Spoilers|Wishing +#####R=== Wishes === + +Some items in ToME will grant the user the ability to "wish" for an +object that they are interested in. As such, these are generally very rare +and very powerful objects. + +#####GRules for Wishes +Due to the powerful nature of wishes, there are some rules that govern +what is able to be wished for. These rules are as follows: +1. You cannot wish for a wish, or any other item which would grant more + wishes. +2. A wish will always generate *one* object. So, never put a number, "a" + or "an" in front of the object you are wishing for. +3. It is not possible to wish for the magical +'s to the object (i.e. you + cannot wish for "gloves of slaying (+10,+10)", but you can wish for + "gloves of slaying"). +4. You cannot wish for artifacts, but you *can* wish for excellent (ego) + items. +5. You can wish for monsters and ego monsters (e.g. "cave orc", "rogue cave + orc"). +6. You cannot wish for unique monsters. +7. You can wish the monster to have a specific flag - a pet, or a foe. + Possible flags include: enemy, neutral, friendly, pet, companion. |