# TEAMCAPTAIN sdynet --------## 0.32 TOURNAMENT ##-------- ###### Made Beogh Great Again ####### --------------------------------------- -- https://crawl.develz.org/tournament/0.32/ -- https://tournament.nemelex.cards/0.32.html # CRAWL.NEMELEX.CARDS # Last Updated at Sep 12, 2024 --------## Sound Pack ##-------- -- /SoundSupport clear #sound_on = true sound_pack += https://osp.nemelex.cards/build/latest.zip:["init.txt"] one_SDL_sound_channel = true sound_fade_time = 0.5 sound_volume = 0.5 --템자랑하기 : 우클릭 lab_use_click_to_send_chat = true --------## Generic Settings ##-------- view_delay = 200 show_more = false tile_show_threat_levels = trivial, easy, tough, nasty, unusual cloud_status = true always_show_zot = true always_show_gems = true more_gem_info = true hp_warning = 30 default_manual_training = true #font to Consolas tile_font_crt_family = Consolas tile_font_stat_family = Consolas tile_font_msg_family = Consolas tile_font_lbl_family = Consolas #font size tile_font_stat_size = 19 tile_font_msg_size = 15 #tile_font_tip_size = 10 #tile_font_lbl_size = 10 --------## Explore Settings ##-------- explore_stop -= greedy_visited_item_stack rest_wait_both = true rest_wait_percent = 80 explore_auto_rest=true #runset ignore runset_ignore_message += your breath back runset_ignore_message += You feel.*sick runset_ignore_message += You are no longer corroded #runrest_ignore -- need to test runrest_ignore_message += Your fire (vortexlvortices).*something runrest_ignore_message += something .* fire (vortexlvortices) --------## Alert Messages ##-------- -- monsters alert ### Snake Pit ### force_more_message += guardian serpent .*into view force_more_message += salamander tyrant .*into view ### Shoal ### force_more_message += merfolk aquamancer .*into view ### Vaults ### force_more_message += peacekeeper .*into view ### Zot Realm ### force_more_message += draconian scorcher .*into view force_more_message += draconian shifter .*into view force_more_message += moth of wrath .*into view ### Slime Pit ### force_more_message += shining eye .*into view -- danger brands alert #venom alert unusual_monster_items += venom force_more_message += is wielding.*venom.* force_more_message += .* of venom comes into view #antimagic alert unusual_monster_items += antimagic force_more_message += is wielding.*antimagic.* force_more_message += .* of antimagic comes into view #distortion alert force_more_message += is wielding.*distortion.* flash_screen_message += is wielding.*distortion.* force_more_message += .* of distortion comes into view flash_screen_message += .* of distortion comes into view #holy alert for undeads : if you.race() == "Vampire" or you.race() == "Mummy" or you.race() == "Ghoul" or you.race() == "Demonspawn" then unusual_monster_items += holy force_more_message += is wielding.*holy.* flash_screen_message += is wielding.*holy.* force_more_message += .* of holy.* comes into view flash_screen_message += .* of holy.* comes into view : end -- miscast alert force_more_message += you miscast .* message_colour ^= cyan: you miscast .* --demonspawn alert force_more_message += your demonic ancestry asserts itself -- message color #message color for noises message_colour ^= lightgreen:.*(shout|bark|howl|roar|shriek|bellow|bleat|trumpet|screech|buzz|moan|gurgl|croak|growl|hiss|skitter|squeaks|low|rustle|Zot) message_colour ^= lightgreen:it creaks loudly message_colour ^= yellow:You scream message_colour ^= yellow:You shout for attention #message color exceptions #message_colour ^= mute: There is message_colour ^= white: no longer poisoned message_colour ^= white: You shake off the liquid fire message_colour ^= white: your life force feels restored message_colour ^= white: your .* skill increases to message_colour ^= white: You have reached level message_colour ^= white: returning message_colour ^= white: breath back message_colour ^= white: (wounded|damaged|destroy|dead|kill|kills) message_colour ^= cyan: is nearby! message_colour ^= cyan: monsters nearby! message_colour ^= green: You add the spell message_colour ^= green: Training target .* for .* reached #message additions force_more_message += grants you force_more_message += pick up a manual force_more_message += You have finished your manual force_more_message += You feel a bit more experienced force_more_message += You feel your power leaking away force_more_message += found a staircase to the ecumenical temple force_more_message += blink again force_more_message += yourself slow down -- force_more_message += Training target .* for .* reached force_more_message += They guard the force_more_message += It guards the demonic rune of Zot force_more_message += You feel less contaminated with magical energies. #message exceptions force_more_message -= You have reached level force_more_message -= You sense force_more_message -= You shake off the liquid fire #vehumet flash flash_screen_message += Vehumet offers* --------## Item Settings ##-------- -- autopickup autopickup_exceptions += 0 then local hp_difference = previous_hp - current_hp -- announcing damage if hp_difference > max_hp * value and not was_berserk and not was_form then crawl.mpr("*** YOU TAKE " .. hp_difference .. " DAMAGE!! HP:[" .. current_hp .. "/" .. max_hp .. "] *** ") crawl.more() end -- warning hp if current_hp < max_hp * value and not warning_hp then crawl.mpr("Are you sure you won't die?") crawl.more() crawl.mpr("Your life is more valuable than your enemy's death...") warning_hp = true elseif current_hp > max_hp * value and warning_hp then warning_hp = false end end previous_hp = current_hp previous_form = current_form was_berserk_last_turn = you_are_berserk end } -- AnnounceMP() : alarm when you have low MP { local previous_mp = 0 local previous_max_mp = 0 function AnnounceMP() local current_mp, max_mp = you.mp() if previous_mp > 0 and previous_max_mp == max_mp then local mp_difference = previous_mp - current_mp if current_mp < (max_mp * 0.5) and mp_difference > 0 then crawl.mpr("*** LOW MP WARNING MP:[" .. current_mp .. "/" .. max_mp .. "] *** ") if current_mp < (max_mp * 0.1) then crawl.more() end end end previous_mp = current_mp previous_max_mp = max_mp end } -- EndFloorNotation() : show more after exploring a floor { function is_explored() if string.find(crawl.messages(1),"Done exploring") then return true elseif string.find(crawl.messages(1),"Partly explored,*") then return true elseif string.find(crawl.messages(1),"Could not explore") then return true end return false end function EndFloorNotation() if is_explored() then if you.branch() == "Vaults" and you.depth() == 4 then crawl.mpr("Check Inventory & Find Items... \n *** WARNING! : Next Floor is Vault:5 *** ") else crawl.mpr("Check Inventory & Find Items... ") end crawl.more() end end } -- force_threat_mores() : alerts for high hd monsters (red) coming into view #https://gist.github.com/Implojin/ec5c4e341d92e0ce34a87f5c060a19ea { local ATT_NEUTRAL = 1 local visible_mons_table = {} -- To reduce warning spam from bands we compare m:name(), -- so you'll only get a single warning per group of Death Yaks or whatever. function update_visible_mons_table(m) for _,visible_mons in ipairs(visible_mons_table) do if m:name() == visible_mons:name() then return false end end table.insert(visible_mons_table, m) if m:threat() >= 3 then crawl.formatted_mpr("Extremely Dangerous Monster: " .. m:name() .. "") crawl.more() end end -- To give our threat warnings some hysteresis, -- we warn once when adding a new mthrt:nasty to the table, -- and we wipe the threat table whenever LOS is empty. function force_threat_mores() local LOS = you.los() local m = nil local current_threat = 0 for i = -LOS,LOS do for j = -LOS,LOS do m = monster.get_monster_at(i,j) if m and you.see_cell_no_trans(i,j) and m:attitude() < ATT_NEUTRAL then current_threat = current_threat + m:threat() update_visible_mons_table(m) end end end if current_threat == 0 then visible_mons_table = {} end end } -- Show prompt when you use irradiate while you are in white contam { function check_contam() if you.contaminated() > 1 then crawl.setopt("confirm_action += Irradiate") else crawl.setopt("confirm_action -= Irradiate") end end } -- check bad mutations : blurry vison. random tele. *rage { local mut = true function mutate() if mut then if string.find(crawl.messages(5), "you.*uncertain") or string.find(crawl.messages(5), "pissed off") or string.find(crawl.messages(5), "vision blurs") or string.find(crawl.messages(5), "ability to read scrolls")then crawl.yesno("Check your mutations!") crawl.mpr("Check your mutations!") mut = false end end if not mut and not string.find(crawl.messages(8), "Check your mutations!") then mut = true end end } -- show prompt and counter when your DDoor is almost expired { local door = true function DDoorWarning() if you.status("in death's door (expiring)") and door then crawl.yesno("DDoor is almost expired! (Y or N to confirm.)", false, false, true, false) crawl.mpr("It will be ended in 5-10 turns...... ") door = false end if not you.status("in death's door (expiring)") then door = true end end } { local counter = you.turns() function DDoorCounter() if you.status("in death's door (expiring)") then crawl.mpr("Count "..you.turns() - counter.."......") end if not you.status("in death's door (expiring)") then counter = you.turns()+1 end end } -- set options by resistant : rPois { local current_rPois = 0 local was_rPois = -1 function setopt_rPois() current_rPois = you.res_poison() if was_rPois == -1 or was_rPois ~= current_rPois then if you.res_poison() < 1 then crawl.setopt("unusual_monster_items += venom") crawl.setopt("force_more_message += is wielding.*venom.*") crawl.setopt("force_more_message += .* of venom comes into view") else crawl.setopt("unusual_monster_items -= venom") crawl.setopt("force_more_message -= is wielding.*venom.*") crawl.setopt("force_more_message -= .* of venom comes into view") end end was_rPois = current_rPois end } -- set options by xl --- veryearly_setopt : if you.xl() < 7 then force_more_message += (orc priest|orc warrior|hornet|centaur|drake|cyclops).*into view : end --- early_setopt : if you.xl() < 13 then force_more_message += wield.*(venom|elec|chaos|heavy|vamparic) unusual_monster_items += venom unusual_monster_items += electrocution unusual_monster_items += heavy force_more_messsage += carrying a wand of message_colour += yellow : carrying a wand of : end -- turn off the setting when you are not in the xl range { local veryearly_setopt = true local early_setopt = true local annotate_init = false function setopt_xl() --initial setup if not annotate_init then crawl.mpr("Enter : /SoundSupport clear") annotate_init = true end --xl annotation if you.xl() >= 7 and veryearly_setopt then crawl.setopt("force_more_message -= (orc priest|orc warrior|hornet|centaur|drake|cyclops).*into view") veryearly_setopt = false end if you.xl() >= 13 and early_setopt then crawl.setopt("force_more_message -= wield.*(venom|elec|chaos|heavy|vamparic)") crawl.setopt("unusual_monster_items -= venom") crawl.setopt("unusual_monster_items -= electrocution") crawl.setopt("unusual_monster_items -= heavy") crawl.setopt("force_more_messsage -= carrying a wand of ") crawl.setopt("message_colour -= yellow : carrying a wand of ") crawl.mpr("Settings for Early Games Disabled...") early_setopt = false end end } --------## Annotations ##-------- { function Annotations() annotate_v5() annotate_m() end } -- Vaults warning : Depth5 & rElec #https://tavern.dcss.io/t/whats-in-your-rc-file/160/15 { local annotated = false function annotate_v5() if string.find(crawl.messages(8),"This branch contains the silver rune of Zot") and not annotated then crawl.sendkeys("!v5" .. string.char(13) .. "!vaults warning" .. string.char(13)) crawl.mpr("Vault5 Warning Checked") if you.res_shock() < 1 then crawl.mpr("Warning : You don't have rElec!!") crawl.more() end annotated = true end end } -- sending 'm' when you start game { local need_skills_opened = true function annotate_m() if you.turns() == 0 and need_skills_opened then crawl.sendkeys("m") need_skills_opened = false you.set_training_target("fighting", 1) you.train_skill("fighting",1) end end } -- settings for late games -- settings for ziggurat --------## References & Spares ##-------- -- https://crawl.develz.org/wiki/doku.php?id=dcss:help:maps:lua:modules:crawl:input -- https://doc.dcss.io/index.html --crawl.mpr(string.format("max_hp_decreased is: %s", max_hp_decreased and "True" or "False"))