# ================================================================ # Zharivex RC - BASE (fixed, DCSS 0.34) # ================================================================ always_show_zot = true show_more = false default_manual_training = true # 위험 네임드 force_more_message += .*(Agnes|Aizul|Amaemon|Antaeus|Arachne|Asmodeus|Azrael|Bai Suzhen|Blork the orc|Boris|Cerebov|Crazy Yiuf|Dispater|Dissolution|Donald|Dowan|Duvessa|Edmund|the Enchantress|Ereshkigal|Erica|Erolcha|Eustachio|Fannar|Frances|Frederick|Gastronok|Geryon|Gloorx Vloq|Grinder|Grum|Grunn|Harold|Ignacio|Ijyb|Ilsuiw|Jessica|Jorgrun|Jory|Joseph|Josephina|Josephine|Khufu|Kirke|the Lernaean hydra|Lodul|Lom Lobon|Louise|Maggie|Mara|Margery|Maurice|Menkaure|Mlioglotl|Mennas|Mnoleg|Murray|Nergalle|Natasha|Nessos|Nikola|Pan|Parghit|Pikel|Polyphemus|Prince Ribbit|Psyche|Purgy|Robin|Roxanne|the royal jelly|Rupert|Saint Roka|the Serpent of Hell|Sigmund|Snorg|Sojobo|Sonja|Terence|Tiamat|Urug|Vashnia|Vv|Xtahua|Zenata).*comes? into view # 위험 몬스터 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|royal 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|scorcher).*into view force_more_message += (ancient lich|orb of fire|executioner|juggernaut|shrike).*into view force_more_message += (wretched star|lurking horror).*into view force_more_message += (neqoxec|cacodemon|doom hound).*into view force_more_message += 27-headed.*comes? into view force_more_message += (radroach|entropy weaver|meliai).*into view force_more_message += (salamander tyrant|ironbound frostheart).*into view force_more_message += (walking crystal tome|walking divine tome|walking earthen tome|walking frostbound tome).*into view # 위험한 몬스터로 변이 force_more_message += changes into.*((giant|floating|shining) eye|eye of draining) force_more_message += changes into.*(moth of wrath|ghost moth|torpor snail) force_more_message += changes into.*(guardian serpent|draconian shifter|convoker) force_more_message += changes into.*(flayed ghost|royal mummy|mummy priest|fiend|tzitzimitl) force_more_message += changes into.*(tormentor|curse toe|curse skull) force_more_message += changes into.*(hellion|hell sentinel|deep elf sorcerer) force_more_message += changes into.*(deep elf high priest|scorcher) force_more_message += changes into.*(ancient lich|orb of fire|executioner|juggernaut|shrike) force_more_message += changes into.*(wretched star|lurking horror) force_more_message += changes into.*(neqoxec|cacodemon|doom hound) force_more_message += changes into.*(radroach|entropy weaver|meliai) force_more_message += changes into.*(salamander tyrant|ironbound frostheart) force_more_message += changes into.*(walking crystal tome|walking divine tome|walking earthen tome|walking frostbound tome) # 왜곡 무기 경고 + 화면 점멸 force_more_message += It is wielding.*of distortion force_more_message += She is wielding.*of distortion force_more_message += He is wielding.*of distortion force_more_message += wielding.* distortion.*comes? into view flash_screen_message += It is wielding.*of distortion flash_screen_message += She is wielding.*of distortion flash_screen_message += He is wielding.*of distortion flash_screen_message += wielding.* distortion.*comes? into view flash_screen_message += distortion.*comes? into view # 실수로 귀한 투척물 소모하는 것 방지 autoinscribe += throwing net:!f autoinscribe += curare:!f autoinscribe += datura:!f # 화면 표시 tile_show_threat_levels = tough, nasty view_delay = 200 tile_font_crt_family = Consolas tile_font_stat_family = Consolas tile_font_msg_family = Consolas tile_font_lbl_family = Consolas # 자동줍기: 골드/주문서/물약/책/장신구/완드/지팡이/발동품 autopickup = $?!:"/|} autopickup_exceptions += (atropa|dispersal) autopickup_exceptions ^= >useless_item # 방어구 자동줍기 (원래 정책 유지) # 보조 방어구: 빈 슬롯이면 줍고, 착용 중이면 아티팩트/속성 방어구만 줌. # 몸통 갑옷: 줍지 않음. 방패: 착용 중일 때만 아티팩트/속성 방패를 줌. # 수정: 잘못된 it.ego 판정 제거, 인식되는 장비 슬롯 명칭과 local 변수 사용. { add_autopickup_func(function(it, name) if it.class(true) ~= "armour" then return end if it.is_useless then return false end local slot = it.subtype() if slot == "body" then return false end -- Avoid standalone Lua table braces: DCSS treats a line containing -- only '}' as the end of an RC Lua block. local equipped_slot if slot == "cloak" then equipped_slot = "Cloak" elseif slot == "helmet" then equipped_slot = "Helmet" elseif slot == "gloves" then equipped_slot = "Gloves" elseif slot == "boots" then equipped_slot = "Boots" elseif slot == "shield" then equipped_slot = "Shield" else return end local currently_equipped = items.equipped_at(equipped_slot) if slot == "shield" and not currently_equipped then return false end if not currently_equipped then return true end return it.artefact or it.branded end) } # 콰즈랄 신앙 관련 runrest_ignore_message += Your protection from.*is fading runrest_ignore_message += You feel less protected from # 웨어블러드 소리지르기 runrest_ignore_message += the wereblood boils in your veins # 주변 식물 죽음 runrest_ignore_message += A nearby plant withers and dies # 화염 볼텍스 관련 (vortex|vortices 오타 수정) runrest_ignore_message += Your fire (vortex|vortices).*something runrest_ignore_message += something .* fire (vortex|vortices) # 웨어블러드/데스 채널 만료 메시지 runrest_ignore_message += Your primal bloodlust is almost over runrest_ignore_message += Your unholy channel expires # 자동탐사 중 이미 본 아이템 더미로 인한 정지 감소 explore_stop -= greedy_visited_item_stack # 사운드팩 (원본에서 중복된 블록 한 번만 유지) sounds_on = true sound_pack += https://sound-packs.nemelex.cards/DCSS-UST/v1.0.1.zip sound_pack += https://osp.nemelex.cards/build/latest.zip:["init.txt"] one_SDL_sound_channel = true sound_fade_time = 0.5 bgm_volume = 0.5 # 기타 # tile_player_tile = mons: autofight_stop = 70 -- tile_player_tile = mons:troll # ============================================================================ # >>> ASSASSIN / KOBOLD ENCHANTER ADDON START <<< # 아래부터 파일 끝까지 삭제하면 위의 일반 RC만 남는다. # 기존 RC와 대상이 중복되더라도 의도적으로 유지한다. # 대상: DCSS 0.34 / 은신+주술+Shadowslip 위주 플레이 # ============================================================================ # --------------------------------------------------------------------------- # A. 연타/탈출 실수 방지 및 HP/MP 가시성 # --------------------------------------------------------------------------- # 체력이 85% 이하일 때 Tab 자동공격 방지 (기본 RC의 70%를 덮어씀). # autofight_stop = 85 # Tab 연속입력 간 200ms 미만 입력 방지. # autofight_warning = 200 # 그물/거미줄에서 Tab으로 무심코 턴 소모하지 않기. autofight_caught = false autofight_wait = false # 긴급 생존기 Blink, Shadowslip에 쓸 MP를 남기는 습관. mp_warning = 20 hp_warning = 45 hp_colour = 75:yellow, 45:red # 탐사 전에 HP와 MP를 모두 회복. 한 방향 낙하/해치로 실수 진입 방지. rest_wait_both = true warn_hatches = true # 위험한 오시전(노란색 이상의 miscast 위험)은 확인을 받음. fail_severity_to_confirm = 2 # 투명화가 효과 없는 See Invisible 적이 시야에 있으면 미리 표시. show_invis_targeter = true # --------------------------------------------------------------------------- # B. 위협 표시: 장비/원거리 위험까지 타일에 강조 # --------------------------------------------------------------------------- tile_show_threat_levels = tough, nasty, unusual unusual_monster_items += distortion, chaos, curare, atropa, datura, dispersal unusual_monster_items += wand, throwing net # 조이기, 감속, 석화, 표식, 이동 봉쇄 상태를 시각적으로 확인. tile_player_status_icons = slow, constr, petr, mark, -move # --------------------------------------------------------------------------- # C. 암살용 탄약 줍기: 일반 RC의 >atropa|dispersal 정책을 여기서만 덮어씀 # --------------------------------------------------------------------------- autopickup_exceptions ^= <(atropa|datura|dispersal) # 위험한 변이 발동은 확인 후 사용. autoinscribe += wand of polymorph:!V # --------------------------------------------------------------------------- # D. 몬스터 경보: 0.34 monster_alert는 처음 만났을 때 --More-- 표시 # 이미 기본 RC에 있는 몬스터도 여기서 다시 등록한다. # --------------------------------------------------------------------------- # 캐릭터 기준 'nasty' 판정은 무조건 경고 (상대적 위협 수준 기반). monster_alert += -nasty # D-1. 포위, 조이기, 속도 우세, 이탈 저지 monster_alert += guardian serpent, anaconda, naga warrior, nagaraja monster_alert += mana viper, shock serpent, naga sharpshooter, naga ritualist monster_alert += salamander tyrant, salamander mystic, naga mage monster_alert += blink frog, death yak, hydra, catoblepas, skyshark, dire elephant, hornet, dream sheep monster_alert += vault warden, vault sentinel, ironbound convoker, draconian shifter monster_alert += merfolk siren, merfolk avatar, merfolk javelineer monster_alert += jumping spider, orb spider, tarantella, torpor snail monster_alert += tentacled monstrosity, death cob, death scarab # D-2. 주술 저항이 높거나 수면/혼란이 잘 안 통하는 강적 monster_alert += lich, ancient lich, dread lich, vampire knight monster_alert += skeletal warrior, bone dragon, phantasmal warrior, flayed ghost monster_alert += stone giant, fire giant, frost giant, titan, juggernaut monster_alert += electric golem, orb guardian, orb of fire, killer klown, quicksilver dragon monster_alert += acid blob, azure jelly, quicksilver ooze, shining eye monster_alert += curse skull, curse toe, mummy priest, royal mummy # D-3. 명중률/회피 의존을 무너뜨리는 마법, 시야 내 강한 원거리 위협 monster_alert += spriggan air mage, spriggan druid, spriggan berserker, spriggan defender monster_alert += orc sorcerer, orc high priest, orc priest, ogre mage, great orb of eyes monster_alert += deep elf annihilator, deep elf sorcerer, deep elf demonologist monster_alert += deep elf high priest, deep elf elementalist, ironbound frostheart monster_alert += ironbound thunderhulk, sphinx, basilisk, cyclops monster_alert += satyr, faun, centaur warrior, hellion, tormentor monster_alert += death drake, apocalypse crab, wretched star, ghost moth, silent spectre monster_alert += entropy weaver, moth of wrath, floating eye, golden eye # D-4. 정지된 포탑/조각상과 가까워지는 자동탐사 방지 # '자는/움직이지 않는' 해당 적이 발견되면 자동탐사 경로에 제외구역 생성. auto_exclude += oklob plant, obsidian statue, orange crystal statue, Roxanne # --------------------------------------------------------------------------- # E. 변이로 위험 몬스터가 된 경우: 기존 목록과 별도로 추가 # --------------------------------------------------------------------------- force_more_message += changes into.*(anaconda|nagaraja|shock serpent|mana viper|naga sharpshooter|naga ritualist) force_more_message += changes into.*(blink frog|death yak|catoblepas|dire elephant|skyshark|hydra) force_more_message += changes into.*(vault warden|vault sentinel|merfolk siren|merfolk avatar|orb spider) force_more_message += changes into.*(lich|dread lich|vampire knight|skeletal warrior|bone dragon) force_more_message += changes into.*(sphinx|great orb of eyes|orc sorcerer|deep elf annihilator) force_more_message += changes into.*(spriggan air mage|centaur warrior|hellion|tormentor) # 히드라 머리 수가 붙은 출현 메시지도 놓치지 않기. force_more_message += hydra.*comes? into view # --------------------------------------------------------------------------- # F. 실제로 위급한 전투 메시지: --More--, 화면 점멸 및 자동탐사 중단 # 조이기 '매 턴 피해' 메시지는 과도한 경고를 피하려고 넣지 않음. # --------------------------------------------------------------------------- force_more_message += A sentinel.s mark forms upon you force_more_message += You cannot teleport right now force_more_message += Your surroundings flicker force_more_message += You feel yourself slow down force_more_message += You are held in a net force_more_message += You are caught in a web force_more_message += Ouch! That really hurt! force_more_message += You fail to use your ability force_more_message += You are too injured to fight blindly force_more_message += You are blasted by holy energy! force_more_message += Space (warps|bends).*around you flash_screen_message += A sentinel.s mark forms upon you flash_screen_message += You cannot teleport right now flash_screen_message += Ouch! That really hurt! flash_screen_message += (guardian serpent|anaconda|naga sharpshooter|nagaraja|shock serpent|salamander tyrant).*comes? into view flash_screen_message += (vault warden|vault sentinel|merfolk avatar|merfolk siren|great orb of eyes).*comes? into view flash_screen_message += (orb of fire|dread lich|ancient lich|hellion).*comes? into view # force_more_message 자체는 자동탐사를 반드시 끊지 않으므로 별도 설정. runrest_stop_message ^= A sentinel.s mark forms upon you runrest_stop_message ^= You cannot teleport right now runrest_stop_message ^= Ouch! That really hurt! runrest_stop_message ^= (guardian serpent|anaconda|shock serpent|salamander tyrant).*comes? into view runrest_stop_message ^= (vault warden|vault sentinel|merfolk siren|merfolk avatar).*comes? into view runrest_stop_message ^= (orb of fire|ancient lich|dread lich|great orb of eyes).*comes? into view # --------------------------------------------------------------------------- # G. 상태 자체를 검사하는 경고 (정확한 메시지 문구에 의존하지 않음) # 효과에 처음 걸린 턴에만 ASSASSIN ALERT를 한 번 출력. # 다른 RC에서 ready()를 정의하면 덮어쓰므로, 그때는 병합이 필요함. # --------------------------------------------------------------------------- force_more_message += ASSASSIN ALERT flash_screen_message += ASSASSIN ALERT runrest_stop_message ^= ASSASSIN ALERT { local assassin_previous_states = {} local function assassin_state_alert(key, is_active, detail) local active = not not is_active if active and not assassin_previous_states[key] then crawl.mpr("ASSASSIN ALERT - " .. detail) end assassin_previous_states[key] = active end function ready() -- These functions are documented in DCSS 0.34's crawl Lua API. assassin_state_alert("anchor", you.anchored(), "DIMENSION ANCHOR - Blink and teleport blocked") assassin_state_alert("constrict", you.constricted(), "CONSTRICTED - movement restricted") assassin_state_alert("caught", you.caught(), "CAUGHT - trapped by a net or web") assassin_state_alert("mesmerised", you.mesmerised(), "MESMERISED - retreat restricted") assassin_state_alert("petrifying", you.petrifying(), "PETRIFYING - avoid petrification") assassin_state_alert("silenced", you.silenced(), "SILENCED - spells unavailable") assassin_state_alert("confused", you.confused(), "CONFUSED - movement unreliable") assassin_state_alert("slowed", you.slowed(), "SLOWED - escape speed reduced") end } # --------------------------------------------------------------------------- # H. 옵션 (필요하면 # 제거) # 문을 자동으로 열지 않아 은신에 더 유리하지만 탐사 진행이 느려짐. # travel_open_doors = approach # ============================================================================ # <<< ASSASSIN / KOBOLD ENCHANTER ADDON END >>> # ============================================================================