local a={cache={}}do do local function __modImpl() return{ tempFolder="mge_tc2_temp", downloadAttempts=3, defaultSoundSettings={ volume=1, minDistance=5, maxDistance=135, }, }end function a.a()local b=a.cache.a if not b then b={c=__modImpl()}a.cache.a=b end return b.c end end do local function __modImpl() local b=a.a() local c={} function c.downloadAssets( d, e ) local f=b.tempFolder local g=b.downloadAttempts if not isfolder(f)then makefolder(f) end local h=0 for i in d do h+=1 end local i=0 local j=0 local k={} local l={} local function downloadAsset(m,n,o) if o==0 then table.insert(k,`Failed to download {m}: {n}`) j+=1 return end local p,q=pcall(function() local p=`{f}/asset_{i}` local q=game:HttpGetAsync(n) if q==""then error"Empty response" end writefile(p,q) return getcustomasset(p) end) if p then d[m]=q l[m]=q i+=1 if e then e(i,h) end else warn(`Download attempt failed for {m}: {q}`) task.wait(0.1) downloadAsset(m,n,o-1) end end local m={} for n,o in d do table.insert(m,task.spawn(downloadAsset,n,o,g)) end repeat task.wait() until i+j>=h return{ success=j==0, downloaded=i, failed=j, errors=k, } end function c.cleanup() if isfolder(b.tempFolder)then delfolder(b.tempFolder) end end return c end function a.b()local b=a.cache.b if not b then b={c=__modImpl()}a.cache.b=b end return b.c end end do local function __modImpl() local b=game:GetService"Players" local c={} local d=false local e={} c.callbackOnVoice=function(f) table.insert(e,f) end c.track=function() if not d then d=true local function trackPlayer(f) print(`VoiceTracker: tracking player {f.DisplayName}({f.Name}:{f.UserId})`) local g=f.Character or f.CharacterAdded:Wait() local h=g:WaitForChild"Head" if h:IsA"Part"then h.ChildAdded:Connect(function(i) if i:IsA"Sound"and i.Name=="VoicePlaying"then for j,k in e do k(i) end end end) else error"VoiceTracker: character's head is not is a Part" end end for f,g in b:GetPlayers()do task.spawn(trackPlayer,g) end b.PlayerAdded:Connect(trackPlayer) print(`VoiceTracker: success`) else error"VoiceTracker: tried to double track (never should happen)" end end return c end function a.c()local b=a.cache.c if not b then b={c=__modImpl()}a.cache.c=b end return b.c end end do local function __modImpl() local b=game:GetService"RunService" local c=a.a() local d={} function d.replace( e, f, g ) local h=c.defaultSoundSettings local i=Instance.new"Sound" i.Parent=e.Parent i.SoundId=f i.Volume=if g and g.volume then g.volume else h.volume local j=pcall(function() i.RollOffMinDistance=if g and g.minDistance then g.minDistance else h.minDistance i.RollOffMaxDistance=if g and g.maxDistance then g.maxDistance else h.maxDistance end) if not j then warn"SoundReplacer: MinDistance/MaxDistance not supported" end i:Play() b.Heartbeat:Wait() e.Volume=0 task.spawn(function() i.Ended:Wait() i:Destroy() end) return i end return d end function a.d()local b=a.cache.d if not b then b={c=__modImpl()}a.cache.d=b end return b.c end end do local function __modImpl() return{ medic={ ["rbxassetid://998310097"]=2, }, battlecry={ ["rbxassetid://6434574279"]=3, ["rbxassetid://2468237553"]=3, ["rbxassetid://998307792"]=3, }, agent={ ["rbxassetid://6434574758"]=3.5, ["rbxassetid://6434574728"]=3.5, ["rbxassetid://6434573327"]=3.5, ["rbxassetid://6434573473"]=3.5, ["rbxassetid://6434573371"]=3.5, ["rbxassetid://6434573438"]=3.5, }, building={ ["rbxassetid://6434572892"]=2, ["rbxassetid://6434572685"]=2, ["rbxassetid://6434572721"]=2, ["rbxassetid://6434572832"]=2, ["rbxassetid://6434574012"]=2, ["rbxassetid://6434573974"]=2, ["rbxassetid://6434573945"]=2, ["rbxassetid://6434572662"]=2, ["rbxassetid://6434572794"]=2, ["rbxassetid://6434572759"]=2, }, }end function a.e()local b=a.cache.e if not b then b={c=__modImpl()}a.cache.e=b end return b.c end end do local function __modImpl() return{ incoming1="https://drive.google.com/uc?export=download&id=1LdA-oQ9ZoDMu1el5sGy3fX9RsKmCT1EA", incoming2="https://drive.google.com/uc?export=download&id=1oWKniJS0eeUIAe-q1_hFp6PhVmT0_5cx", incoming3="https://drive.google.com/uc?export=download&id=1Z23nNcL3u_nfZe2kWt9I0NYCgRr24omr", medic1="https://drive.google.com/uc?export=download&id=1CjIcS_BTiPCRv7REbSg1sg34qUBgjlB_", medic2="https://drive.google.com/uc?export=download&id=1Ij0Ycu16KRJw8mwofpsG4ZyhvjNjXDuk", medic3="https://drive.google.com/uc?export=download&id=12y01MuR40ylGl-GMTrZorm6bTE4G8vil", thanks1="https://drive.google.com/uc?export=download&id=1sdafLhMJ2Kau4S4KDq5xEEcQSk9sKqQ0", go1="https://drive.google.com/uc?export=download&id=1OIvzDbUKZcZ1EAYVpK0ueC4V1pxzz7Kp", go2="https://drive.google.com/uc?export=download&id=1MJzytLGJxcxcH2qJzFte3XspQJ97aHdC", go3="https://drive.google.com/uc?export=download&id=1cZV8-Naeus6J0jXIOEe48wN7w3JWHaYI", battlecry1="https://drive.google.com/uc?export=download&id=1Dt_6nkGSQROH8HlkV36EW8I1TdPEGYaz", battlecry2="https://drive.google.com/uc?export=download&id=1W-JppsLb8RMHutxNXf4UEVjh0RgDFHXJ", battlecry3="https://drive.google.com/uc?export=download&id=15w2LrUlxROIOWUu7gM66VxDX-AsSgJrU", battlecry4="https://drive.google.com/uc?export=download&id=1-Hk-gBIh7k5vhqoHtzTYXqn3g0jYCBer", battledare1="https://drive.google.com/uc?export=download&id=13O22_fEzbUD1GgvXDE_pdvUjH_0WWIC6", battledare2="https://drive.google.com/uc?export=download&id=1C1KSghP6vj8HmZulQCgLZsYkDR16EUi8", battledare3="https://drive.google.com/uc?export=download&id=1j_32XFRJACTETuZYaZMaBjX-8C0V6vx4", cheer1="https://drive.google.com/uc?export=download&id=1PPI1fLM82xuBT-dLxgpvTuVMls-jj0H4", cheer2="https://drive.google.com/uc?export=download&id=1Sa5OBU68kZVXwLGfRQscxaLLFuhh4k-p", cheer3="https://drive.google.com/uc?export=download&id=1ApBt7_KY0nkyDmIYWKHLQ4gkjC6IJvw4", jeer1="https://drive.google.com/uc?export=download&id=1_EK-T8OrF4iyuuc8myL-AgLSdJ-ATQ2v", jeer2="https://drive.google.com/uc?export=download&id=1p9ADMKJgfTE7a4cJN6hVfhH62YkOQ6hW", jeer3="https://drive.google.com/uc?export=download&id=13lMjltOzJ-rlStcVN9Dwvh5S70DE1Wpv", jeer4="https://drive.google.com/uc?export=download&id=1nGPX7005tb0GPts78cO3N4cJG0gih6kU", yes1="https://drive.google.com/uc?export=download&id=107iYafKPuP7goZu4FUkMtFIxumJGDQsS", yes2="https://drive.google.com/uc?export=download&id=1fv1ojFVeknUfRllZJXhYmJItAEirIzgB", yes3="https://drive.google.com/uc?export=download&id=1TowcHxEX-qZUh3FZmPlS8ROvWK6wLN8V", no1="https://drive.google.com/uc?export=download&id=1BpkrZrh6xnqT02sfuxHGw-D1a5zRhwaF", no2="https://drive.google.com/uc?export=download&id=1rpGWPaffs8tZcxVVMLBDW-g4Kl8a9iWu", no3="https://drive.google.com/uc?export=download&id=16jph__d8h7vQ1TYzfIaQ7v0qq4asusBr", sentryahead1="https://drive.google.com/uc?export=download&id=1xsEmwPEIr7ZTpyi5pdTwFhsF5DpXyOLC", sentryahead2="https://drive.google.com/uc?export=download&id=1Hy6wzUrUZPe2jdSR6jyAOXkVDDdhbXm-", needdispenser1="https://drive.google.com/uc?export=download&id=1LfLT9ydPCtPnF0RUhig_VPi_r10ocGZw", needsentry1="https://drive.google.com/uc?export=download&id=1gWo-79wDAxo_CBrhgA3gj4EKSHKHCJh-", needteleporter1="https://drive.google.com/uc?export=download&id=1B4oJAQg-_pOgm1cGhoT9lxsXiObGgeQ_", needteleporter2="https://drive.google.com/uc?export=download&id=1AKfXCrXyCWhNRN_DTGOLKdpkQOJpPK-S", moveup1="https://drive.google.com/uc?export=download&id=18VZeKWtZVSRSkacp7_S2bqmvMdh0USPV", headleft1="https://drive.google.com/uc?export=download&id=10uzY_mgixzNy9yqVR9PqxxjHzcA7oHBP", headleft2="https://drive.google.com/uc?export=download&id=1KuAXPvNwBd3LLxY0hM36esTSFAEWDayN", headright1="https://drive.google.com/uc?export=download&id=1aYjX4AewA-wQDEO8SSl2IFTfsQz4sj1K", headright2="https://drive.google.com/uc?export=download&id=141cLTBWzBx4uY0NDNy0lz-YUZ_yQOawk", headright3="https://drive.google.com/uc?export=download&id=1QWQ_IyIjWjyCyWxx9oJSOxt9hc3NrC5x", sappingteleporter1="https://drive.google.com/uc?export=download&id=15GcYunCoPAzOQhWl9TvV94LQ5LIPwpMR", sappingdispenser1="https://drive.google.com/uc?export=download&id=15V48S-cbs5r9GsP9I1oydAfnhSxKEIvO", sappingsentry1="https://drive.google.com/uc?export=download&id=1uSFcvFhUegzweQ_pKKsHve1n0CBuE2SG", flankerfake1="https://drive.google.com/uc?export=download&id=1z3CY5A3fVUBw6JfaruD1NC4RGT8opa36", engineerfake1="https://drive.google.com/uc?export=download&id=1-rnLv6I6PzGWrJfAxQLJzD5qG95ffXWi", marksmanfake1="https://drive.google.com/uc?export=download&id=1vE7o1hT3afcs3Y0H3PeY-R8mBKNOIs2X", annifake1="https://drive.google.com/uc?export=download&id=16JnVAuCCx2huhq_O3cqVfI-esCmmZ2JJ", brutefake1="https://drive.google.com/uc?export=download&id=1GGGPUagfYwpAkLqsBKy6W0dhrNKoNYUn", doctorfake1="https://drive.google.com/uc?export=download&id=16_63BBhbqpmfsZN7YtgpahocrihXAnPU", trooperfake1="https://drive.google.com/uc?export=download&id=1v3lObxn4wbZvLFJZPwcTkIcLre2hsh3F", agentfake1="https://drive.google.com/uc?export=download&id=1rSWX82ohuunxNX2O9oz2dVj8mAu-EXaw", pyrofake1="https://drive.google.com/uc?export=download&id=1lRSleeqLvL6P9pIPGMizS8Rx1W-tMyra", hitcharge1="https://drive.google.com/uc?export=download&id=1YvAHox1n5IT-X_0dqONGO0-xlOwM0L2w", hitcharge2="https://drive.google.com/uc?export=download&id=1dXl-qYCdjWRI7uWz14ZTG3N2LAQcHFn7", hitcharge3="https://drive.google.com/uc?export=download&id=16gzRSxyXFdgHnPu5dtiETHVSpitCim1g", niceshot1="https://drive.google.com/uc?export=download&id=1T67FWqkV0_QHiv4r9q75ujqLe0Ej1o1C", niceshot2="https://drive.google.com/uc?export=download&id=1UFLHqKPlUnXKbsjxHhkFe_shrNIuMIPX", niceshot3="https://drive.google.com/uc?export=download&id=1whDVSrJVfWA0lMzDNZpSJVMeRSPaCSzM", helpme1="https://drive.google.com/uc?export=download&id=1R9i6btUqyDYWv_CeRwpmteUc-15XEqIO", helpme2="https://drive.google.com/uc?export=download&id=181TeukHwPErpMTbiCRtprC_gAU-SjZwN", helpme3="https://drive.google.com/uc?export=download&id=1csVXUaRyTjbTTktP1PuM8tbgFw4OQTF9", agentnoaim1="https://drive.google.com/uc?export=download&id=1RgSKcVNPRuovR6lx4h6qdzv3x5pTyGBE", agentnoaim2="https://drive.google.com/uc?export=download&id=1JjFFm5wA6c8OLIctFrD46gafPidaQbff", agentnoaim3="https://drive.google.com/uc?export=download&id=1UWdLMB-6YTVasl5LF2PuA5UN_XeC_htT", taunt5="https://drive.google.com/uc?export=download&id=1315sLkyXGNCoqWlcP4fDEp1mwFKUoV16", taunt7="https://drive.google.com/uc?export=download&id=1UE5V5pxm_Pevony3GO8bjDY1_xmrbTJ4", }end function a.f()local b=a.cache.f if not b then b={c=__modImpl()}a.cache.f=b end return b.c end end do local function __modImpl() local b=a.f() return{ ["rbxassetid://2468239145"]=b.incoming1, ["rbxassetid://2468237553"]=b.incoming2, ["rbxassetid://2468237944"]=b.incoming3, ["rbxassetid://998307706"]=b.incoming1, ["rbxassetid://998307887"]=b.incoming3, ["rbxassetid://2468239697"]=b.incoming2, ["rbxassetid://998307792"]=b.incoming2, ["rbxassetid://998310018"]=b.medic1, ["rbxassetid://998310097"]=b.medic2, ["rbxassetid://998310191"]=b.medic3, ["rbxassetid://2468251414"]=b.thanks1, ["rbxassetid://2468250279"]=b.thanks1, ["rbxassetid://998311067"]=b.thanks1, ["rbxassetid://998311173"]=b.thanks1, ["rbxassetid://998310977"]=b.thanks1, ["rbxassetid://2468253345"]=b.thanks1, ["rbxassetid://2468237030"]=b.go1, ["rbxassetid://2468236480"]=b.go2, ["rbxassetid://998302213"]=b.go3, ["rbxassetid://2468234663"]=b.go2, ["rbxassetid://998302353"]=b.go1, ["rbxassetid://6434574196"]=b.battlecry1, ["rbxassetid://6434574313"]=b.battlecry2, ["rbxassetid://6434574249"]=b.battlecry3, ["rbxassetid://6434574279"]=b.battlecry4, ["rbxassetid://6434573289"]=b.battledare1, ["rbxassetid://6434573252"]=b.battledare2, ["rbxassetid://6434573227"]=b.battledare3, ["rbxassetid://6434574043"]=b.cheer1, ["rbxassetid://6434574097"]=b.cheer2, ["rbxassetid://6434574121"]=b.cheer3, ["rbxassetid://6434573798"]=b.jeer1, ["rbxassetid://6434573758"]=b.jeer2, ["rbxassetid://6434573731"]=b.jeer3, ["rbxassetid://6434573692"]=b.jeer4, ["rbxassetid://2468254146"]=b.yes1, ["rbxassetid://998311471"]=b.yes2, ["rbxassetid://2468253871"]=b.yes3, ["rbxassetid://998311415"]=b.yes1, ["rbxassetid://2468255534"]=b.yes2, ["rbxassetid://998311374"]=b.yes3, ["rbxassetid://6434573825"]=b.flankerfake1, ["rbxassetid://6434573858"]=b.flankerfake1, ["rbxassetid://6434573327"]=b.engineerfake1, ["rbxassetid://6434573473"]=b.engineerfake1, ["rbxassetid://6434573371"]=b.engineerfake1, ["rbxassetid://6434573438"]=b.engineerfake1, ["rbxassetid://6434573596"]=b.marksmanfake1, ["rbxassetid://6434573647"]=b.marksmanfake1, ["rbxassetid://6434573545"]=b.marksmanfake1, ["rbxassetid://6434573502"]=b.marksmanfake1, ["rbxassetid://6434573918"]=b.doctorfake1, ["rbxassetid://6434573883"]=b.doctorfake1, ["rbxassetid://6434574222"]=b.brutefake1, ["rbxassetid://6434574163"]=b.brutefake1, ["rbxassetid://6434574468"]=b.pyrofake1, ["rbxassetid://6434574527"]=b.pyrofake1, ["rbxassetid://6434574425"]=b.pyrofake1, ["rbxassetid://6434574347"]=b.pyrofake1, ["rbxassetid://6434572640"]=b.trooperfake1, ["rbxassetid://6434572612"]=b.trooperfake1, ["rbxassetid://6434574583"]=b.annifake1, ["rbxassetid://6434574499"]=b.annifake1, ["rbxassetid://6434574644"]=b.spyfake1, ["rbxassetid://998310406"]=b.no1, ["rbxassetid://998310528"]=b.no2, ["rbxassetid://998310684"]=b.no3, ["rbxassetid://2468240394"]=b.no1, ["rbxassetid://2468240833"]=b.no2, ["rbxassetid://2468241332"]=b.no3, ["rbxassetid://6434572892"]=b.sentryahead1, ["rbxassetid://6434572863"]=b.sentryahead2, ["rbxassetid://6434572685"]=b.needteleporter1, ["rbxassetid://6434572721"]=b.needteleporter2, ["rbxassetid://6434572832"]=b.needteleporter1, ["rbxassetid://6434574012"]=b.needdispenser1, ["rbxassetid://6434573974"]=b.needdispenser1, ["rbxassetid://6434573945"]=b.needdispenser1, ["rbxassetid://6434572662"]=b.needsentry1, ["rbxassetid://6434572794"]=b.needsentry1, ["rbxassetid://6434572759"]=b.needsentry1, ["rbxassetid://6434573113"]=b.moveup1, ["rbxassetid://6434573055"]=b.moveup1, ["rbxassetid://998302108"]=b.moveup1, ["rbxassetid://6434573081"]=b.moveup1, ["rbxassetid://6434573139"]=b.moveup1, ["rbxassetid://6434573191"]=b.moveup1, ["rbxassetid://13873763098"]=b.headleft1, ["rbxassetid://13873762927"]=b.headleft2, ["rbxassetid://13873762801"]=b.headleft2, ["rbxassetid://13873761355"]=b.headright1, ["rbxassetid://13873760966"]=b.headright2, ["rbxassetid://13873762105"]=b.headright3, ["rbxassetid://2468245748"]=b.sappingteleporter1, ["rbxassetid://2468243828"]=b.sappingdispenser1, ["rbxassetid://2468244826"]=b.sappingsentry1, ["rbxassetid://13873764621"]=b.hitcharge1, ["rbxassetid://13873764277"]=b.hitcharge2, ["rbxassetid://13873764469"]=b.hitcharge3, ["rbxassetid://13873764133"]=b.hitcharge1, ["rbxassetid://6434572954"]=b.niceshot1, ["rbxassetid://6434572981"]=b.niceshot2, ["rbxassetid://6434573023"]=b.niceshot3, ["rbxassetid://6434572923"]=b.niceshot1, ["rbxassetid://998305797"]=b.helpme1, ["rbxassetid://998306013"]=b.helpme2, ["rbxassetid://1001353229"]=b.helpme3, ["rbxassetid://6434574610"]=b.agentnoaim1, ["rbxassetid://6434574758"]=b.agentnoaim2, ["rbxassetid://6434574691"]=b.agentnoaim3, ["rbxassetid://6434574788"]=b.agentnoaim1, ["rbxassetid://6434574728"]=b.agentnoaim2, ["rbxassetid://6434574818"]=b.agentnoaim3, ["rbxassetid://9022916946"]=b.taunt5, ["rbxassetid://9022916759"]=b.taunt7, ["rbxassetid://9022916575"]=b.taunt5, ["rbxassetid://9022916258"]=b.taunt7, }end function a.g()local b=a.cache.g if not b then b={c=__modImpl()}a.cache.g=b end return b.c end end end local b=a.b() local c=a.c() local d=a.d() local e=a.e() local f=a.f() local g={} for h,i in f do g[h]=i end local h={} for i,j in e do for k,l in j do h[k]=l end end print"Starting asset download..." local i=b.downloadAssets( f, function(i,j) print(`Downloaded {i}/{j} assets`) end ) if not i.success then warn(`Download completed with {i.failed} failures:`) for j,k in i.errors do warn(k) end end b.cleanup() local j=(a.g()) c.callbackOnVoice(function(k) local l=(j)[k.SoundId] if l then local m={ volume=h[k.SoundId], } d.replace(k,l,m) print(`Replaced {k.SoundId} with {l}`) end end) c.track()