鶹ԭ

MU logo
MU logo

鶹ԭ offers youth esports summer camps

May 28, 2026

鶹ԭ will host itsthird-annualesportssummer camp this June, open to community youth.

Two camps, focused on Super Smash Bros., will be offered: a day camp for rising 3rdthrough 6thgraders on June27, and an overnight camp for rising 7ٳthrough 12thgraders on June26-28. Beginners are expected to join the day camp, while the overnight camp is targeted toward moderate to advanced players.

The camps will include individualized Super Smash Bros. instruction from 鶹ԭ Esports coaching staff, head-to-head tournaments, andon-campusdining.All campersare required tobring their ownNintendo Switchcontrollers, and overnight campers must bring their own bedding.

The cost is $40for thedaycamp, and $150for the overnight camp.Mealswill be provided.

Sawyer, age13, who has attended the campsince 2024, said, “It’s a place I can go where there’s kids who like the same games I like, and it’s just really nice to go away to summer camp for a few days and play some Super Smash Bros. with other kids. I also like that there are other activities in between Smash Bros. tournaments.”

Register for the day campand the overnight camp.Registration closesJune 19.

鶹ԭ’s thriving esports team has more than 100 members and nine Great Lakes Esports Conference championship wins. The University launched an esports management minor in 2022, making it one of the few schools in the U.S. to offer such a program.

Learn more about esportsatManchesterhere.

For the media

EmaileSports@manchester.edufor more information.

鶹ԭ, in North Manchester and Fort Wayne, Ind., offers vibrant and transformative student experiences. Learn more atwww.manchester.edu/about-manchester.

Our mission and values

鶹ԭ respects the infinite worth of every individual andgraduatespersons of ability and conviction who draw upon their education and faith to lead principled, productive, and compassionate lives that improve the human condition.

More News

exists --- (function ensure40pxInlineEarly() { function set40(el) { el && el.style.setProperty('padding-top', '40px', 'important'); } // If header already parsed, set now; otherwise set as soon as it appears. const hdrNow = document.getElementById(HEADER_ID); if (hdrNow) { set40(hdrNow); return; } new MutationObserver((muts, obs) => { const hdr = document.getElementById(HEADER_ID); if (hdr) { set40(hdr); obs.disconnect(); } }).observe(document.documentElement, { childList: true, subtree: true }); })(); // --- Helpers --- function hideDiviBars() { document.querySelectorAll('.divibars-container').forEach(div => { const content = (div.textContent || '').replace(/\u00A0/g, ' ').trim(); const shouldHide = !content || /all\s*clear/i.test(content) || /test/i.test(content) || /feed\s*has\s*no\s*items\.?/i.test(content); if (shouldHide) div.style.setProperty('display', 'none', 'important'); }); } function isEffectivelyVisible(el) { if (!el || !el.isConnected) return false; const target = el.querySelector('.divibars, .divibars-wrapper, .divibars-content') || el; const cs = getComputedStyle(target); if (cs.display === 'none' || cs.visibility === 'hidden' || target.hidden) return false; if (parseFloat(cs.opacity || '1') < 0.05) return false; if (target.closest('[aria-hidden="true"]')) return false; const rect = target.getBoundingClientRect(); const hasSize = (rect.width > 0 && rect.height > 0) || (target.offsetWidth > 0 && target.offsetHeight > 0); if (!hasSize) return false; const vh = window.innerHeight || document.documentElement.clientHeight; return rect.bottom > 0 && rect.top < vh; } function anyRealBannerVisible() { // A “real” banner = visible AND not empty/test/all-clear/feed-empty return Array.from(document.querySelectorAll(CANDS)).some(el => { if (!isEffectivelyVisible(el)) return false; const txt = (el.textContent || '').replace(/\u00A0/g, ' ').trim(); if (!txt) return false; if (/all\s*clear/i.test(txt) || /test/i.test(txt) || /feed\s*has\s*no\s*items\.?/i.test(txt)) return false; return true; }); } function setForce110(on) { const root = document.documentElement; const was = root.classList.contains('divibar-force-110'); if (!!on === was) return; root.classList.add('divibar-atomic'); root.classList.toggle('divibar-force-110', !!on); // If we’re NOT forcing 110, clear any stray inline 110 the plugin may add later. if (!on) { const hdr = document.getElementById(HEADER_ID); if (hdr) hdr.style.setProperty('padding-top', '40px', 'important'); } requestAnimationFrame(() => root.classList.remove('divibar-atomic')); } // Debounced 2-frame confirmation to avoid flicker during animations let raf1 = null, raf2 = null; function scheduleRecompute() { if (raf1) return; raf1 = requestAnimationFrame(() => { raf1 = null; hideDiviBars(); const a = anyRealBannerVisible(); raf2 = requestAnimationFrame(() => { raf2 = null; const b = anyRealBannerVisible(); setForce110(a && b); }); }); } // --- Wiring --- document.addEventListener('DOMContentLoaded', scheduleRecompute); window.addEventListener('load', scheduleRecompute); window.addEventListener('resize', () => { cancelAnimationFrame(raf1); raf1 = null; cancelAnimationFrame(raf2); raf2 = null; scheduleRecompute(); }); new MutationObserver(() => scheduleRecompute()).observe(document.documentElement, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class', 'aria-hidden'] }); document.addEventListener('transitionend', e => { if (e.target && e.target.closest(CANDS)) scheduleRecompute(); }); document.addEventListener('animationend', e => { if (e.target && e.target.closest(CANDS)) scheduleRecompute(); }); document.addEventListener('click', function (e) { const btn = e.target && e.target.closest('.divibars-close'); if (!btn) return; setTimeout(() => { const bar = btn.closest('.divibars-container, [class*="divibar"]'); if (bar) bar.style.setProperty('display', 'none', 'important'); scheduleRecompute(); }, 200); }, true); // Initial pass scheduleRecompute(); })();