##### Crawl Init file ############################################### # For descriptions of all options, as well as some more in-depth information # on setting them, consult the file # options_guide.txt # in your /docs directory. If you can't find it, the file is also available # online at: # https://github.com/crawl/crawl/blob/master/crawl-ref/docs/options_guide.txt # # Crawl uses the first file of the following list as its option file: # * init.txt in the -rcdir directory (if specified) # * .crawlrc in the -rcdir directory (if specified) # * init.txt (in the Crawl directory) # * ~/.crawl/init.txt (Unix only) # * ~/.crawlrc (Unix only) # * ~/init.txt (Unix only) # * settings/init.txt (in the Crawl directory) ##### Some basic explanation of option syntax ####################### # Lines beginning with '#' are comments. The basic syntax is: # # field = value or field.subfield = value # # Only one specification is allowed per line. # # The terms are typically case-insensitive except in the fairly obvious # cases (the character's name and specifying files or directories when # on a system that has case-sensitive filenames). # # White space is stripped from the beginning and end of the line, as # well as immediately before and after the '='. If the option allows # multiple comma/semicolon-separated terms (such as # autopickup_exceptions), all whitespace around the separator is also # trimmed. All other whitespace is left intact. # # There are three broad types of Crawl options: true/false values (booleans), # arbitrary values, and lists of values. The first two types use only the # simple =, with later options - which includes your options that are different # from the defaults - overriding earlier ones. List options allow using +=, ^=, # -=, and = to append, prepend, remove, and reset, respectively. Usually you will # want to use += to add to a list option. Lastly, there is := which you can use # to create an alias, like so: # ae := autopickup_exceptions # From there on, 'ae' will be treated as if it you typed autopickup_exceptions, # so you can save time typing it. # ##### Other files ################################################### # You can include other files from your options file using the 'include' # option. Crawl will treat it as if you copied the whole text of that file # into your options file in that spot. You can uncomment some of the following # lines by removing the beginning '#' to include some of the other files in # this folder. # Some useful, more advanced options, implemented in LUA. # include = advanced_optioneering.txt # Alternative vi bindings for Dvorak users. # include = dvorak_command_keys.txt # Alternative vi bindings for Colemak users. # include = colemak_command_keys.txt # Override the vi movement keys with a non-command. # include = no_vi_command_keys.txt # Turn the shift-vi keys into safe move, instead of run. # include = safe_move_shift.txt ##### Ancient versions ############################################## # If you're used to the interface of ancient versions of Crawl, you may # get back parts of it by uncommenting the following options: # include = 034_command_keys.txt # And to revert monster glyph and colouring changes: # include = 034_monster_glyphs.txt # include = 052_monster_glyphs.txt # include = 060_monster_glyphs.txt # include = 071_monster_glyphs.txt # include = 080_monster_glyphs.txt # include = 0.9_monster_glyphs.txt # include = 0.12_monster_glyphs.txt # include = 0.13_monster_glyphs.txt # include = 0.14_monster_glyphs.txt ###################################################################### # To automatically open the skill menu when starting a new game, add # the following to your options file. { local need_skills_opened = true function ready() if you.turns() == 0 and need_skills_opened then need_skills_opened = false crawl.sendkeys("m") end end } ###################################################################### rest_delay=-1 travel_delay=-1 explore_delay=-1 show_travel_trail=1 rest_wait_both = true rest_wait_percent = 100 :if you.race() == "Kobold" then tile_player_tile =mons:Kobold demonologist :end //:if you.race() == "Octopode" then //tile_player_tile =mons:Kraken //:end easy_eat_chunks = true auto_eat_chunks = true show_more = false # O키 휴식 해제 explore_auto_rest = false autofight_stop = 60 autofight_throw = false hp_warning = 50 mp_warning = 50 hp_colour = 99:yellow, 50:red mp_colour = 99:yellow, 50:red view_delay = 100 language=ko #$ lab_interface_translate = true ## 한글 고정폭 폰트 ## #$ lab_apply_font = true ## 기술창 한글화 ## #$ lab_skill_window_translate = true ## 기술창 수동 시작 ## default_manual_training = true ## 능력창 한글화 ## #$ lab_ability_window_translate = true ## 마법창 한글화 ## #$ lab_magic_window_translate = true ## 골드 인터페이스 ## #$ lab_gold_status = true force_more_message += Your transformation is almost over runrest_stop_message = Your transformation is almost over force_more_message += You revert to your normal fleshy form. runrest_stop_message = You revert to your normal fleshy form. force_more_message += ((giant|floating|shining) eye|eye of draining).*into view force_more_message += (moth of wrath|ghost moth|torpor snail).*into view force_more_message += (guardian serpent|draconian shifter|convoker).*into view force_more_message += (flayed ghost|greater mummy|mummy priest|fiend|tzitzimitl).*into view force_more_message += (tormentor|curse toe|curse skull).*into view force_more_message += (hellion|hell sentinel|deep elf sorcerer).*into view force_more_message += (deep elf high priest|zealout|scorcher).*into view force_more_message += (ancient lich|orb of fire|executioner|shrike).*into view force_more_message += (cacodemon|neqoxec|lich|death cob|juggernaut).*into view force_more_message += (Deep elf (demonologist|sorcerer)).*into view force_more_message += (Blork the orc|오크 블로크).*into view force_more_message += (Crazy Yiuf|미치광이 이우프).*into view force_more_message += (Dowan|도완).*into view force_more_message += (Duvessa|듀베사).*into view force_more_message += (Edmund|에드문드).*into view force_more_message += (Erica|에리카).*into view force_more_message += (Erolcha|에롤차).*into view force_more_message += (Eustachio|유스타키오).*into view force_more_message += (Fannar|판나르).*into view force_more_message += (Grinder|그라인더).*into view force_more_message += (Gastronok|가스트로녹).*into view force_more_message += (Grum|그룸).*into view force_more_message += (Harold|해럴드).*into view force_more_message += (Ijyb|이지브).*into view force_more_message += (Jessica|제시카).*into view force_more_message += (Joseph|조셉).*into view force_more_message += (Maurice|모리스).*into view force_more_message += (Menkaure|멘카우레).*into view force_more_message += (Natasha|나타샤).*into view force_more_message += (Nergalle|네르갈).*into view force_more_message += (Nessos|네소스).*into view force_more_message += (Pikel|피켈).*into view force_more_message += (Prince Ribbit|개굴 왕자).*into view force_more_message += (Psyche|프시케).*into view force_more_message += (Purgy|퍼기).*into view force_more_message += (Robin|로빈).*into view force_more_message += (Sigmund|지그문트).*into view force_more_message += (Snorg|스노그).*into view force_more_message += (Sonja|소냐).*into view force_more_message += (Terence|테런스).*into view force_more_message += (Urug|우룩).*into view force_more_message += (Agnes|아그네스).*into view force_more_message += (Aizul|아이줄).*into view force_more_message += (Arachne|아라크네).*into view force_more_message += (Asterion|아스테리온).*into view force_more_message += (Azrael|아즈라엘).*into view force_more_message += (Dissolution|용해자).*into view force_more_message += (Donald|도널드).*into view force_more_message += (Enchantress|인챈트리스).*into view force_more_message += (Frances|프랜시스).*into view force_more_message += (Ilsuiw|일스이우).*into view force_more_message += (Josephine|조세핀).*into view force_more_message += (Kirke|키르케).*into view force_more_message += (Lernaean|레르나).*into view force_more_message += (Louise|루이즈).*into view force_more_message += (Margery|마저리).*into view force_more_message += (Nikola|니콜라).*into view force_more_message += (Polyphemus|폴리페무스).*into view force_more_message += (Roxanne|록산느).*into view force_more_message += (Rupert|루퍼트).*into view force_more_message += (Bai Suzhen|백소정).*into view force_more_message += (Saint Roka|성자 로카).*into view force_more_message += (Vashnia|바쉬니아).*into view force_more_message += (Boris|보리스).*into view force_more_message += (Frederick|프레데릭).*into view force_more_message += (Geryon|게리욘).*into view force_more_message += (Ignacio|이그나시오).*into view force_more_message += (Jory|조리).*into view force_more_message += (Jorgrun|요르그륀).*into view force_more_message += (Mara|마라).*into view force_more_message += (Mennas|멘나스).*into view force_more_message += (Murray|머레이).*into view force_more_message += (Khufu|쿠푸).*into view force_more_message += (Royal Jelly|로열 젤리).*into view force_more_message += (Sojobo|소조보).*into view force_more_message += (Tiamat|티아마트).*into view force_more_message += (Xtahua|싸후아).*into view force_more_message += (Mnoleg|므놀렉).*into view force_more_message += (Gloorx Vloq|글룩스 블로크).*into view force_more_message += (Lom Lobon|롬 로본).*into view force_more_message += (Cerebov|세레보브).*into view force_more_message += (Serpent of Hell|지옥의 마룡).*into view force_more_message += (Asmodeus|아스모데우스).*into view force_more_message += (Antaeus|안타이오스).*into view force_more_message += (Dispater|디스파테르).*into view force_more_message += (Ereshkigal|에레쉬키갈).*into view force_more_message += You feel yourself slow down force_more_message += A sentinel's mark forms upon you force_more_message += You feel less protected from missiles force_more_message += god:(sends|finds|silent|anger) force_more_message += Found .* abyssal rune of Zot force_more_message += The mighty Pandemonium lord .* resides here force_more_message += hell_effect: # Armour/Weapon autopickup by rwbarton, enhanced by HDA with fixes from Bloaxor { add_autopickup_func(function(it, name) local class = it.class(true) local armour_slots = {cloak="Cloak", helmet="Helmet", gloves="Gloves", boots="Boots", body="Armour", shield="Shield"} if (class == "armour") then if it.is_useless then return false end sub_type = it.subtype() equipped_item = items.equipped_at(armour_slots[sub_type]) if (sub_type == "cloak") or (sub_type == "helmet") or (sub_type == "gloves") or (sub_type == "boots") then if not equipped_item then return true else return it.artefact or it.branded or it.ego end end if (sub_type == "body") then if equipped_item then local armourname = equipped_item.name() if equipped_item.artefact or equipped_item.branded or equipped_item.ego or (equipped_item.plus > 2) or armourname:find("dragon") or armourname:find("troll") then return it.artefact else return it.artefact or it.branded or it.ego end end return true end if (sub_type == "shield") then if equipped_item then return it.artefact or it.branded or it.ego end end end end) } explore_stop = artefacts explore_stop += greedy_visited_item_stack,stairs,shops explore_stop += altars,portals,branches,runed_doors,greedy_sacrificeable runrest_ignore_monster += butterfly:1 # Set Alias' stop := runrest_stop_message ignore := runrest_ignore_message ignore += You regained.*mp # Annoyances -- Don't stop autotravel for these events ignore += A.*toadstool withers and dies ignore += disappears in a puff of smoke ignore += engulfed in a cloud of smoke ignore += engulfed in white fluffiness ignore += grinding sound ignore += in your inventory.*rotted away ignore += safely over a trap ignore += standing in the rain ignore += toadstools? grow ignore += You feel.*sick ignore += You walk carefully through the # Jiyva Messages ignore += Jiyva appreciates your sacrifice ignore += Jiyva gurgles merrily ignore += Jiyva says: Divide and consume ignore += You hear.*splatter # Qazlal Messages ignore += The plant is engulfed ignore += You destroy the (bush|fungus|plant) ignore += You displace your # Bad things -- Stop autotravel for these events (duplicates some of HDAForceMore) stop += (blundered into a|invokes the power of) Zot stop += (devoid of blood|starving) stop += A huge blade swings out and slices into you[^r] stop += An alarm trap emits a blaring wail stop += flesh start stop += found a zot trap stop += hear a soft click stop += lose consciousness stop += sense of stasis stop += Wait a moment stop += wrath finds you stop += You fall through a shaft hp_colour = 100:green, 99:lightgrey, 75:yellow, 50:lightred, 25:red mp_colour = 100:green, 99:lightgrey, 75:yellow, 50:lightred, 25:red stat_colour = 3:red, 7:lightred # Notify! Force More force_more_message += LOW HITPOINT WARNING force_more_message += The mighty Pandemonium lord .* resides here force_more_message += Your transformation is almost over force_more_message += A sentinel's mark forms upon you force_more_message += god:(sends|finds|silent|anger) force_more_message += watched by something force_more_message += flickers and vanishes! force_more_message += You feel yourself slow down force_more_message += hell_effect: force_more_message += You feel less protected from missiles force_more_message += skill increases to level # Notify! Fucking Monsters force_more_message += ((giant|floating|shining) eye|eye of draining).*into view force_more_message += (moth of wrath|ghost moth|torpor snail).*into view force_more_message += (guardian serpent|draconian shifter|convoker).*into view force_more_message += (flayed ghost|greater mummy|mummy priest|fiend|tzitzimitl).*into view force_more_message += (tormentor|curse toe|curse skull).*into view force_more_message += (hellion|hell sentinel|deep elf sorcerer).*into view force_more_message += (deep elf high priest|zealout|scorcher).*into view force_more_message += (ancient lich|orb of fire|executioner|juggernaut|shrike).*into view ##### Yermak's Crawl Init file ############################################### #여막꺼에서 필요한 몇개만 따옴 tile_font_crt_family = Lucida Console tile_font_stat_family = Lucida Console tile_font_msg_family = Lucida Console tile_font_lbl_family = Lucida Console msg_min_height = 7 msg_max_height = 10 view_max_height = 21 small_more = true msg_webtiles_height = 10 note_skill_levels = 1,3,6,9,12,15,18,21,24,27 dump_message_count = 50 dump_book_spells = false travel_delay = -1 explore_delay = -1 rest_delay = -1 trapwalk_safe_hp = dart:20,needle:15,arrow:35,bolt:45,spear:40,axe:45,blade:95 { local need_skills_opened = true function ready() if you.turns() == 0 and need_skills_opened then need_skills_opened = false crawl.sendkeys("m") end if crawl.messages(5):find("You enter a gauntlet") and you.god()=="Lugonu" then crawl.mpr("Remember to use Corruption!") end fmore_early_threats() end local fmet = true function fmore_early_threats() if you.xl() == 15 and fmet then crawl.setopt("force_more_message -= centaur.* comes? into view") crawl.setopt("force_more_message -= hydra.* comes? into view") crawl.setopt("force_more_message -= killer bee.* comes? into view") crawl.setopt("force_more_message -= electric eel.* comes? into view") fmet = false end end local aft = false function toggle_autothrow() if aft then crawl.setopt("autofight_throw = false") crawl.mpr("Autofight_throw is off.") else crawl.setopt("autofight_throw = true") crawl.mpr("Autofight_throw is on.") end aft = not aft end local cheiwalk = true function toggle_cheiwalk() if cheiwalk then crawl.setopt("force_more_message -= comes? into view") crawl.mpr("Cheiwalk mode is off.") else crawl.setopt("force_more_message += comes? into view") crawl.mpr("Cheiwalk mode is on.") end cheiwalk = not cheiwalk end local portalmode = false function toggle_portal_mode() if portalmode then crawl.setopt("show_game_time = false") crawl.mpr("Portal mode is off.") else crawl.setopt("show_game_time = true") crawl.mpr("Portal mode is on.") end portalmode = not portalmode end } default_show_all_skills = true default_manual_training = true confirm_butcher = never auto_sacrifice = true show_travel_trail = true show_game_time = true show_god_gift = yes cloud_status = true simple_targeting = false tile_web_mouse_control = false runrest_ignore_message += blood rots? away runrest_ignore_message += Your icy armour runrest_ignore_message += Your skin is crawling a little less runrest_ignore_message += infusion is running out runrest_ignore_message += shroud mutebegins to fray runrest_ignore_message += You feel.*sick interrupt_eat = runrest_safe_poison = 100:100 #interrupt_armour_on -= hp_loss #interrupt_armour_off -= hp_loss interrupt_memorise -= hp_loss interrupt_memorise -= monster autofight_stop = 30 use_animations -= hp tile_show_demon_tier = true ae := autopickup_exceptions # nullifying the effect of the most annoying 0.24 commit: ae += >ring of (poi|resist cor|fli|see) ae += >amulet of ae += >scrolls? of (amn|vuln|noise) ae += >potions? of ligni ae += >ring of (protection from (mag|fire|cold)|mag|stealth|ice|fire|pos|wiz) ae ^= scrolls? of torment : end : if you.race() == "Formicid" then ae += >wand of dig : end : if you.race() == "Tengu" or you.race() == "Merfolk" or you.race() == "Barachi" or you.race() == "Octopode" then ae += >potions? of flight : end : if you.race() == "Vampire" or you.race() == "Mummy" or you.race() == "Ghoul" or you.race() == "Demonspawn" then ae += >scrolls? of holy word : end : if you.god() == "Trog" then ae += >potions? of brilliance ae += >potions? of berserk : end : if you.god() == "Zin" then ae ^= potions? of ambro : end : if false then ae += >potions? of brilliance ae += >book ae += >ring of int skill_focus = true : end #force_more_message += comes? into view #force_more_message += Found a stone staircase force_more_message += Your transformation is almost over runrest_stop_message = Your transformation is almost over force_more_message += You revert to your normal fleshy form. runrest_stop_message = You revert to your normal fleshy form. show_more = false #autofight_throw = true ###### Damage calc ############################################## #이건 모 갤럼꺼에서 가져온 rc #include += HDamage.rc { function ready() AnnounceDamage() end } { local previous_hp = 0 local previous_mp = 0 local previous_form = "" local was_berserk_last_turn = false function AnnounceDamage() local current_hp, max_hp = you.hp() local current_mp, max_mp = you.mp() --Things that increase hp/mp temporarily really mess with this local current_form = you.transform() local you_are_berserk = you.berserk() local max_hp_increased = false local max_hp_decreased = false if (current_form ~= previous_form) then if (previous_form:find("dragon") or previous_form:find("statue") or previous_form:find("tree") or previous_form:find("ice")) then max_hp_decreased = true elseif (current_form:find("dragon") or current_form:find("statue") or current_form:find("tree") or current_form:find("ice")) then max_hp_increased = true end end if (was_berserk_last_turn and not you_are_berserk) then max_hp_decreased = true elseif (you_are_berserk and not was_berserk_last_turn) then max_hp_increased = true end --crawl.mpr(string.format("previous_form is: %s", previous_form)) --crawl.mpr(string.format("current_form is: %s", current_form)) --crawl.mpr(string.format("max_hp_increased is: %s", max_hp_increased and "True" or "False")) --crawl.mpr(string.format("max_hp_decreased is: %s", max_hp_decreased and "True" or "False")) --crawl.mpr(string:format("you_are_berserk is: %s", you_are_berserk and "True" or "False")) --crawl.mpr(string:format("was_berserk_last_turn is: %s", was_berserk_last_turn and "True" or "False")) --Skips message on initializing game if previous_hp > 0 then local hp_difference = previous_hp - current_hp local mp_difference = previous_mp - current_mp if max_hp_increased or max_hp_decreased then if max_hp_increased then crawl.mpr("You now have " .. current_hp .. "/" .. max_hp .. " hp.") else crawl.mpr("You now have " .. current_hp .. "/" .. max_hp .. " hp.") end else --On losing health if (current_hp < previous_hp) then if current_hp <= (max_hp * 0.30) then crawl.mpr("You take " .. hp_difference .. " damage, and have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.50) then crawl.mpr("You take " .. hp_difference .. " damage, and have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.70) then crawl.mpr("You take " .. hp_difference .. " damage, and have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.90) then crawl.mpr("You take " .. hp_difference .. " damage, and have " .. current_hp .. "/" .. max_hp .. " hp.") else crawl.mpr("You take " .. hp_difference .. " damage, and have " .. current_hp .. "/" .. max_hp .. " hp.") end if hp_difference > (max_hp * 0.20) then crawl.mpr("MASSIVE DAMAGE!!") end end --On gaining more than 1 health if (current_hp > previous_hp) then --Removes the negative sign local health_inturn = (0 - hp_difference) if (health_inturn > 1) and not (current_hp == max_hp) then if current_hp <= (max_hp * 0.30) then crawl.mpr("You regained " .. health_inturn .. " hp, and now have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.50) then crawl.mpr("You regained " .. health_inturn .. " hp, and now have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.70) then crawl.mpr("You regained " .. health_inturn .. " hp, and now have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.90) then crawl.mpr("You regained " .. health_inturn .. " hp, and now have " .. current_hp .. "/" .. max_hp .. " hp.") else crawl.mpr("You regained " .. health_inturn .. " hp, and now have " .. current_hp .. "/" .. max_hp .. " hp.") end end if (current_hp == max_hp) then crawl.mpr("Health restored: " .. current_hp .. "") end end --On gaining more than 1 magic if (current_mp > previous_mp) then --Removes the negative sign local mp_inturn = (0 - mp_difference) if (mp_inturn > 1) and not (current_mp == max_mp) then if current_mp < (max_mp * 0.25) then crawl.mpr("You regained " .. mp_inturn .. " mp, and now have " .. current_mp .. "/" .. max_mp .. " mp.") elseif current_mp < (max_mp * 0.50) then crawl.mpr("You regained " .. mp_inturn .. " mp, and now have " .. current_mp .. "/" .. max_mp .. " mp.") else crawl.mpr("You regained " .. mp_inturn .. " mp, and now have " .. current_mp .. "/" .. max_mp .. " mp.") end end if (current_mp == max_mp) then crawl.mpr("MP restored: " .. current_mp .. "") end end --On losing magic if current_mp < previous_mp then if current_mp <= (max_mp / 5) then crawl.mpr("You now have " .. current_mp .. "/" ..max_mp .." mp.") elseif current_mp <= (max_mp / 2) then crawl.mpr("You now have " .. current_mp .. "/" ..max_mp .." mp.") else crawl.mpr("You now have " .. current_mp .. "/" ..max_mp .." mp.") end end end end --Set previous hp/mp and form at end of turn previous_hp = current_hp previous_mp = current_mp previous_form = current_form was_berserk_last_turn = you_are_berserk end }