## 젬클락 표시 ## always_show_gems = true ## 조트클락 표시 ## always_show_zot = true ## 마우스 클릭을 통한 이동 사용 안함 ## #$ lab_disable_mouse_move = true ## 악마 티어 타일로 표시 ## tile_show_demon_tier = true ## 위험도를 노란색, 빨간색만 표시 ## tile_show_threat_levels = tough nasty ## 자동줍기 해제 시 다음 장 (투명몹 대비) ## force_more_message += Deactivating autopickup ## 안 보이는 무언가에게 마나가 빨리면 다음 장 ## force_more_message += watched by something ## 자동공격이 멈추는 체력 비율 ## autofight_stop = 70 ## 왜곡무기 장비한 몬스터, 춤추는 왜곡무기 출현 시 more, 화면이 번쩍 효과 ## 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 ## 메세지가 너무 많이 떴을 때 강제로 more 띄우지 않게 함 ## show_more = false ## 이펙트 딜레이 ## view_delay = 200 ## 플레이어 타일을 해당 종족으로 변경 ## tile_show_player_species = true ## 폰트 변경 ## tile_font_crt_family = Consolas tile_font_stat_family = Consolas tile_font_msg_family = Consolas tile_font_lbl_family = Consolas ## 방을 이동해도 채팅을 지우지 않음 ## #$ lab_disable_chat_clear = true ## vi방식 이동키 비활성화 ## include = no_vi_command_keys.txt ## 사운드 자동 켜기 ## #$ lab_sound_on = true ## 스킬 경험치 메뉴얼 설정 ## default_manual_training = true ## 자동탐사 딜레이 ## travel_delay = -1 ## 탐험 딜레이 ## explore_delay = -1 ## 휴식 딜레이 ## rest_delay = -1 ## 그물, 쿠라레 자동으로 주움 ## autopickup_exceptions += 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('Now you have [' .. current_hp .. '/' .. max_hp .. '] HP') else crawl.mpr('Now you have [' .. current_hp .. '/' .. max_hp .. '] HP') end else --체력 잃을때 if (current_hp < previous_hp) then if current_hp <= (max_hp * 0.30) then crawl.mpr('You take ' .. hp_difference .. ' HP, and have [' .. current_hp .. '/' .. max_hp .. '] HP') elseif current_hp <= (max_hp * 0.50) then crawl.mpr('You take ' .. hp_difference .. ' HP, and have [' .. current_hp .. '/' .. max_hp .. '] HP') elseif current_hp <= (max_hp * 0.70) then crawl.mpr('You take ' .. hp_difference .. ' HP, and have [' .. current_hp .. '/' .. max_hp .. '] HP') elseif current_hp <= (max_hp * 0.90) then crawl.mpr('You take ' .. hp_difference .. ' HP, and have [' .. current_hp .. '/' .. max_hp .. '] HP') else crawl.mpr('You take ' .. hp_difference .. ' HP, and have [' .. current_hp .. '/' .. max_hp .. '] HP') end if hp_difference > (max_hp * 0.20) then crawl.mpr('!!!!! HP Warning !!!!!') end end --체력 얻을때 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 gain ' .. health_inturn .. ' hp, and have [' .. current_hp .. '/' .. max_hp .. '] hp.') elseif current_hp <= (max_hp * 0.50) then crawl.mpr('You gain ' .. health_inturn .. ' HP, and have [' .. current_hp .. '/' .. max_hp .. '] hp.') elseif current_hp <= (max_hp * 0.70) then crawl.mpr('You gain ' .. health_inturn .. ' HP, and have [' .. current_hp .. '/' .. max_hp .. '] HP') elseif current_hp <= (max_hp * 0.90) then crawl.mpr('You gain ' .. health_inturn .. ' HP, and have [' .. current_hp .. '/' .. max_hp ..'] HP') else crawl.mpr('You gain ' .. health_inturn .. ' HP, and have [' .. current_hp .. '/' .. max_hp .. '] HP') end end if (current_hp == max_hp) then crawl.mpr(' HP Full. (' .. current_hp .. ')') end end --마력 얻을때 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 gain ' .. mp_inturn .. ' MP, and have [' .. current_mp .. '/' .. max_mp .. '] MP') elseif current_mp < (max_mp * 0.50) then crawl.mpr('You gain ' .. mp_inturn .. ' MP, and have [' .. current_mp .. '/' .. max_mp .. '] MP') else crawl.mpr('You gain ' .. mp_inturn .. ' MP, and have [' .. current_mp .. '/' .. max_mp .. '] MP') end end if (current_mp == max_mp) then crawl.mpr('MP Full (' .. current_mp .. ')') end end --마력 잃을때 if current_mp < previous_mp then if current_mp <= (max_mp * 0.25) then crawl.mpr('You lose ' .. mp_difference .. 'MP, and have [' .. current_mp .. '/' ..max_mp ..'] MP') elseif current_mp <= (max_mp * 0.50) then crawl.mpr('You lose ' .. mp_difference .. 'MP, and have [' .. current_mp .. '/' ..max_mp ..'] MP') else crawl.mpr('You lose ' .. mp_difference .. 'MP, and 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 function ready() -- Enable AnnounceDamage. announce_damage_ko() if you.turns() == 0 and need_skills_opened then need_skills_opened = false crawl.sendkeys("m") end end } ## 사운드 ## sound_on = true sound_volume = 0.1 # CNC Open Sound Pack sound_pack += https://osp.nemelex.cards/build/latest.zip:["init.txt"] # BindTheEarth Sound Pack sound_pack += https://sound-packs.nemelex.cards/Autofire/BindTheEarth/BindTheEarth.zip ## 우클릭시 채팅창에 아이템 공유 ## lab_use_click_to_send_chat = true ## F2 누르면 마법 스태프 예상데미지 출력 ## { function calc_staff_info(school_level, evo_level, multiplier) -- multiplier 파라미터 추가, 기본값은 1.575 multiplier = multiplier or 1.575 local max_damage = multiplier * (school_level + evo_level/2) local activation = (evo_level + school_level/2) * 6.66 if activation > 100 then activation = 100 end return max_damage, activation end function staff_info_display() local evo = you.skill("Evocations") local output = "" -- Fire staff local fire = you.skill("Fire Magic") local fire_dmg, fire_chance = calc_staff_info(fire, evo) output = output .. string.format("[Fire] D: 0-%.1f, P: %.1f%% \n", fire_dmg, fire_chance) -- Cold staff local ice = you.skill("Ice Magic") local cold_dmg, cold_chance = calc_staff_info(ice, evo) output = output .. string.format("[Cold] D: 0-%.1f, P: %.1f%% \n", cold_dmg, cold_chance) -- Earth staff (1.5x 공식) local earth = you.skill("Earth Magic") local earth_dmg, earth_chance = calc_staff_info(earth, evo, 1.5) output = output .. string.format("[Earth] D: 0-%.1f, P: %.1f%% (33%% to flying)\n", earth_dmg, earth_chance) -- Air staff (1.25x 공식) local air = you.skill("Air Magic") local air_dmg, air_chance = calc_staff_info(air, evo, 1.25) output = output .. string.format("[Air] D: 0-%.1f, P: %.1f%% (Half AC)\n", air_dmg, air_chance) -- Alchemy staff local alchemy = you.skill("Alchemy") local poison_dmg, poison_chance = calc_staff_info(alchemy, evo) output = output .. string.format("[Alchemy] D: 0-%.1f, P: %.1f%% \n", poison_dmg, poison_chance) -- Death staff local necro = you.skill("Necromancy") local death_dmg, death_chance = calc_staff_info(necro, evo) output = output .. string.format("[Death] D: 0-%.1f, P: %.1f%% \n", death_dmg, death_chance) -- Conjuration staff (1.25x 공식) local conj = you.skill("Conjurations") local conj_dmg, conj_chance = calc_staff_info(conj, evo, 1.25) output = output .. string.format("[Conj] D: 0-%.1f, P: %.1f%% (Irresistible)", conj_dmg, conj_chance) crawl.formatted_mpr(output) end crawl.setopt("macros += M \\{F2} ===staff_info_display") } ## @ 누르면 GDR 출력 ## { function with_gdr() local armour_class = you.ac() local gdr = math.floor(16 * math.sqrt(math.sqrt(math.max(0, armour_class)))) crawl.formatted_mpr(string.format("GDR: %d%%", gdr)) crawl.sendkeys('@') end crawl.setopt("macros += M \@ ===with_gdr") }