Difference between revisions of "New Sound Engine"

From Armagetron
m (Reverted edits by 201.17.121.9 (Talk); changed back to last version by Wrtlprnft)
Line 1: Line 1:
The sound engine is coming along nicely, but with the semester starting, I'm not going to be able to get it finished right now.  Hopefully it's somewhat stable or relatively easy to troubleshoot if something's wrong with it.
+
[http://dcc.syr.edu/dforum/message.asp?MessageID=49016 ultram online] [http://www.hollins.edu/ubb/Forum32/HTML/000336.html cheap clomid] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/SelmaJeremy/hijosij.htm free sagem ringtones] [http://ist.greenville.edu/drupal/files/bigibe.html nextel ringtones] [http://dcc.syr.edu/dforum/message.asp?MessageID=49027 cheap alprazolam] [http://www.hollins.edu/ubb/Forum32/HTML/000288.html ultram online] [http://ccfl.unl.edu/twiki/pub/Main/AlexCarneyham/hicif.htm cheap alprazolam] [http://ccfl.unl.edu/twiki/pub/Main/PaulinePauline/sujy.htm free samsung ringtones] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=25 cheap viagra] [http://bugzilla.internet2.edu/attachment.cgi?id=735 motorola ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/AshleighRodriquez/jybuhi.htm viagra online] [http://dcc.syr.edu/dforum/message.asp?MessageID=48916 phentermine online] [http://devel.linux.duke.edu/bugzilla/attachment.cgi?id=256 ultram online] [http://bugzilla.internet2.edu/attachment.cgi?id=760 diazepam online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/JustinJonson/xyhyj.htm cheap rivotril] [http://ccfl.unl.edu/twiki/pub/Main/SummersFrank/vuru.htm ativan online] [http://ccfl.unl.edu/twiki/pub/Main/AlexCarneyham/hykidi.htm clonazepam online] [http://www.hollins.edu/ubb/Forum32/HTML/000281.html cheap tramadol] [http://devel.linux.duke.edu/bugzilla/attachment.cgi?id=253 carisoprodol online] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=26 meridia online] [http://ist.greenville.edu/drupal/files/dydyse.html cheap valium] [http://ccfl.unl.edu/twiki/pub/Main/HermanHogg/rukexo.htm zoloft online] [http://ist.greenville.edu/drupal/files/kuxer.html cheap cyclobenzaprine] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/SelmaJeremy/cybo.htm sonyericsson ringtones] [http://ccfl.unl.edu/twiki/pub/Main/MarthaBell/nezyz.htm flexeril online] [http://ccfl.unl.edu/twiki/pub/Main/SummersFrank/lyfogo.htm online xanax] [http://ccfl.unl.edu/twiki/pub/Main/MarthaBell/wofo.htm nokia ringtones] [http://grid.unimelb.edu.au/twiki/pub/Main/JamesMiller/sonuhop.htm cheap valium] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/RobertSmith/pevesuz.htm wellbutrin online] [http://ccfl.unl.edu/twiki/pub/Main/HermanHogg/rypel.htm online sildenafil] [http://www.hollins.edu/ubb/Forum32/HTML/000339.html zoloft online] [http://devel.linux.duke.edu/bugzilla/attachment.cgi?id=251 valium online] [http://www.hollins.edu/ubb/Forum32/HTML/000384.html midi ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000290.html cialis online] [http://bugzilla.internet2.edu/attachment.cgi?id=744 qwest ringtones] [http://devel.linux.duke.edu/bugzilla/attachment.cgi?id=266 free real ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/PhillipRewers/kino.htm free real ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/SelmaJeremy/belizyl.htm polyphonic ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/PhillipRewers/dijuxoj.htm free tracfone ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000322.html cheap ultracet] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=28 cheap norco] [http://dcc.syr.edu/dforum/message.asp?MessageID=49072 free polyphonic ringtones] [http://bugzilla.internet2.edu/attachment.cgi?id=732 levitra online] [http://ccfl.unl.edu/twiki/pub/Main/AlexCarneyham/woguked.htm cheap ambien] [http://www.hollins.edu/ubb/Forum32/HTML/000334.html cheap sildenafil] [http://www.hollins.edu/ubb/Forum32/HTML/000333.html prozac online] [http://ist.greenville.edu/drupal/files/rucod.html xanax online] [http://www.hollins.edu/ubb/Forum32/HTML/000343.html ortho online] [http://ist.greenville.edu/drupal/files/wypy.html free funny ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000296.html vicodin online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/BilyKroft/koky.htm cheap phentermine] [http://bugzilla.internet2.edu/attachment.cgi?id=740 cheap norco] [http://ccfl.unl.edu/twiki/pub/Main/HermanHogg/figog.htm buy lortab] [http://ccfl.unl.edu/twiki/pub/Main/AlexCarneyham/kozu.htm cheap hydrocodone] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=24 ativan online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/AshleighRodriquez/godufit.htm buy paxil] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/SelmaJeremy/sevuv.htm mono ringtones] [http://bugzilla.internet2.edu/attachment.cgi?id=755 valium online] [http://grid.unimelb.edu.au/twiki/pub/Main/JamesMiller/sicofyr.htm cheap tramadol] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/BettySmith/kuvodoj.htm zoloft online] [http://dcc.syr.edu/dforum/message.asp?MessageID=49034 hydrocodone online] [http://dcc.syr.edu/dforum/message.asp?MessageID=49022 viagra online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/BettySmith/niwupu.htm albuterol] [http://ccfl.unl.edu/twiki/pub/Main/MarthaBell/gedenu.htm cheap rivotril] [http://ccfl.unl.edu/twiki/pub/Main/PaulinePauline/dyzoko.htm free verizon ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000314.html lorazepam] [http://grid.unimelb.edu.au/twiki/pub/Main/JackLawson/rejyvob.htm viagra online] [http://www.hollins.edu/ubb/Forum32/HTML/000325.html order didrex] [http://ccfl.unl.edu/twiki/pub/Main/SummersFrank/kuzypuh.htm order phentermine] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/SelmaJeremy/nofelyr.htm cingular ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000389.html ericsson ringtones] [http://dcc.syr.edu/dforum/message.asp?MessageID=49077 free sony ericsson ringtones] [http://devel.linux.duke.edu/bugzilla/attachment.cgi?id=267 free motorola ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/JustinJonson/kuluc.htm zanaflex online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/JustinJonson/gekiw.htm order flexeril] [http://www.hollins.edu/ubb/Forum32/HTML/000369.html samsung ringtones] [http://devel.linux.duke.edu/bugzilla/attachment.cgi?id=259 free nokia ringtones] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=22 cheap diazepam] [http://www.hollins.edu/ubb/Forum32/HTML/000376.html sonyericsson ringtones] [http://ist.greenville.edu/drupal/files/devowy.html buy lorazepam] [http://ist.greenville.edu/drupal/files/role.html real ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000351.html rivotril] [http://www.hollins.edu/ubb/Forum32/HTML/000312.html buy ambien] [http://www.hollins.edu/ubb/Forum32/HTML/000337.html cheap albuterol] [http://dcc.syr.edu/dforum/message.asp?MessageID=49018 cialis online] [http://dcc.syr.edu/dforum/message.asp?MessageID=49035 ambien online] [http://bugzilla.internet2.edu/attachment.cgi?id=746 free sagem ringtones] [http://dcc.syr.edu/dforum/message.asp?MessageID=49025 norco online] [http://ist.greenville.edu/drupal/files/puweso.html meridia online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/RobertSmith/cibedis.htm cheap nexium] [http://ccfl.unl.edu/twiki/pub/Main/PaulinePauline/zivy.htm mono ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000352.html hgh online] [http://bugzilla.internet2.edu/attachment.cgi?id=754 ultram online] [http://ist.greenville.edu/drupal/files/ruwyze.html ativan online] [http://ccfl.unl.edu/twiki/pub/Main/AlexCarneyham/linefej.htm buy wellbutrin] [http://ccfl.unl.edu/twiki/pub/Main/MarthaBell/rofev.htm free free ringtones] [http://ist.greenville.edu/drupal/files/pobiwi.html diazepam online] [http://bugzilla.internet2.edu/attachment.cgi?id=751 sprint ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000345.html buy lortab] [http://grid.unimelb.edu.au/twiki/pub/Main/JamesMiller/bopogo.htm carisoprodol online] [http://dcc.syr.edu/dforum/message.asp?MessageID=49071 verizon ringtones] [http://ccfl.unl.edu/twiki/pub/Main/HermanHogg/relu.htm clomid online] [http://ccfl.unl.edu/twiki/pub/Main/AlexCarneyham/sifus.htm xenical online] [http://bugzilla.internet2.edu/attachment.cgi?id=759 order xanax] [http://www.hollins.edu/ubb/Forum32/HTML/000360.html free ringtones] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=43 cheap wellbutrin] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=15 buy carisoprodol] [http://cyrusimap.web.cmu.edu/twiki/bin/view/Main/DikVolirev tracfone ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/SherylDiu/popuxo.htm sharp ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000291.html ativan online] [http://ist.greenville.edu/drupal/files/covubi.html buy norco] [http://ccfl.unl.edu/twiki/pub/Main/PaulinePauline/wetule.htm free sony ericsson ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000362.html free tracfone ringtones] [http://dcc.syr.edu/dforum/message.asp?MessageID=49075 sonyericsson ringtones] [http://dcc.syr.edu/dforum/message.asp?MessageID=48901 soma online] [http://www.hollins.edu/ubb/Forum32/HTML/000293.html meridia online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/JustinJonson/gelol.htm buy zyban] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/AshleighRodriquez/rigyse.htm clonazepam online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/SelmaJeremy/kohe.htm free music ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/RobertSmith/pybex.htm cheap cyclobenzaprine] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/AshleighRodriquez/pero.htm ativan online] [http://ccfl.unl.edu/twiki/pub/Main/AlexCarneyham/huvixu.htm cheap paxil] [http://grid.unimelb.edu.au/twiki/pub/Main/JackLawson/nunuso.htm ativan online] [http://dcc.syr.edu/dforum/message.asp?MessageID=49046 but nexium] [http://ccfl.unl.edu/twiki/pub/Main/MarthaBell/cohufyk.htm free mp3 ringtones] [http://ccfl.unl.edu/twiki/pub/Main/MarthaBell/vekorot.htm cheap hgh] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/RobertSmith/kuky.htm buy propecia] [http://devel.linux.duke.edu/bugzilla/attachment.cgi?id=268 samsung ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/BettySmith/kyzefe.htm ortho online] [http://ccfl.unl.edu/twiki/pub/Main/MarthaBell/wydyty.htm but zyban] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/SherylDiu/gefu.htm free punk ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000340.html lipitor online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/SherylDiu/ruviti.htm mtv ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000346.html cheap vigrx] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=41 lorazepam online] [http://cyrusimap.web.cmu.edu/twiki/bin/view/Main/RingoFloper buy fioricet] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/RobertSmith/tuju.htm lorazepam online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/SherylDiu/sypev.htm cool ringtones] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=30 qwest ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000289.html cheap diazepam] [http://ccfl.unl.edu/twiki/pub/Main/HermanHogg/kuhufid.htm tenuate online] [http://dcc.syr.edu/dforum/message.asp?MessageID=49028 cheap clonazepam] [http://dcc.syr.edu/dforum/message.asp?MessageID=49015 fioricet online] [http://bugzilla.internet2.edu/attachment.cgi?id=725 order ativan] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=36 clonazepam online] [http://ccfl.unl.edu/twiki/pub/Main/HermanHogg/zivesup.htm cheap propecia] [http://dcc.syr.edu/dforum/message.asp?MessageID=49061 free mp3 ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/RobertSmith/donyki.htm buy hydrocodone] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/BilyKroft/hywi.htm cheap carisoprodol] [http://dcc.syr.edu/dforum/message.asp?MessageID=49051 didrex online] [http://www.hollins.edu/ubb/Forum32/HTML/000300.html levitra] [http://bugzilla.internet2.edu/attachment.cgi?id=738 nextel ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000356.html cheap zyban] [http://bugzilla.internet2.edu/attachment.cgi?id=736 mp3 ringtones] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=38 levitra online] [http://www.hollins.edu/ubb/Forum32/HTML/000341.html buy celexa] [http://grid.unimelb.edu.au/twiki/pub/Main/NoriJohn/rupo.htm tracfone ringtones] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=27 cheap adipex] [http://dcc.syr.edu/dforum/message.asp?MessageID=49056 free free ringtones] [http://ccfl.unl.edu/twiki/pub/Main/PaulinePauline/wypo.htm music ringtones] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=29 free nextel ringtones] [http://dcc.syr.edu/dforum/message.asp?MessageID=49054 free nokia ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/AshleighRodriquez/putyh.htm levitra online] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/PhillipRewers/wozone.htm free free ringtones] [http://dcc.syr.edu/dforum/message.asp?MessageID=49049 propecia online] [http://www.hollins.edu/ubb/Forum32/HTML/000320.html cheap nexium] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/BilyKroft/piwyh.htm cialis] [http://devel.linux.duke.edu/bugzilla/attachment.cgi?id=250 buy soma] [http://devel.linux.duke.edu/bugzilla/attachment.cgi?id=263 mp3 ringtones] [http://cyrusimap.web.cmu.edu/twiki/bin/view/Main/BillKukin tramadol online] [http://ist.greenville.edu/drupal/files/xuxuw.html order phentermine] [http://dcc.syr.edu/dforum/message.asp?MessageID=49059 funny ringtones] [http://ccfl.unl.edu/twiki/pub/Main/AlexCarneyham/zupu.htm nexium online] [http://www.hollins.edu/ubb/Forum32/HTML/000316.html buy wellbutrin] [http://ccfl.unl.edu/twiki/pub/Main/SummersFrank/runuz.htm order adipex] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=23 cheap cialis] [http://ist.greenville.edu/drupal/files/rire.html ultram online] [http://ccfl.unl.edu/twiki/pub/Main/PaulinePauline/hulupeg.htm free alltel ringtones] [http://grid.unimelb.edu.au/twiki/pub/Main/NoriJohn/nywytew.htm free funny ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/PhillipRewers/cevo.htm funny ringtones] [http://ccfl.unl.edu/twiki/pub/Main/HermanHogg/nidexyk.htm cheap celexa] [http://ccfl.unl.edu/twiki/pub/Main/PaulinePauline/pelyvug.htm free real ringtones] [http://cyrusimap.web.cmu.edu/twiki/bin/view/Main/LeonPokert free ringtones] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=33 samsung ringtones] [http://bugzilla.internet2.edu/attachment.cgi?id=757 viagra online] [http://grid.unimelb.edu.au/twiki/pub/Main/JamesMiller/pusug.htm diazepam online] [http://grid.unimelb.edu.au/twiki/pub/Main/JamesMiller/byvuf.htm ultram online] [http://bugzilla.internet2.edu/attachment.cgi?id=758 vicodin online] [http://www.coe.unt.edu/chec/forum/forum_posts.asp?TID=35 alprazolam online] [http://ist.greenville.edu/drupal/files/tego.html propecia online] [http://devel.linux.duke.edu/bugzilla/attachment.cgi?id=257 buy diazepam] [http://www.hollins.edu/ubb/Forum32/HTML/000364.html free mp3 ringtones] [http://bugzilla.internet2.edu/attachment.cgi?id=733 cheap meridia] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/AshleighRodriquez/xyvibi.htm cheap meridia] [http://www.hollins.edu/ubb/Forum32/HTML/000359.html free nokia ringtones] [http://wwwx.cs.unc.edu/~kmp/twiki40/pub/Main/AshleighRodriquez/lyxex.htm adipex online] [http://ist.greenville.edu/drupal/files/huduc.html xenical online] [http://ist.greenville.edu/drupal/files/nezy.html hydrocodone] [http://ccfl.unl.edu/twiki/pub/Main/PaulinePauline/kyxud.htm free cingular ringtones] [http://www.hollins.edu/ubb/Forum32/HTML/000375.html free sagem ringtones] The sound engine is coming along nicely, but with the semester starting, I'm not going to be able to get it finished right now.  Hopefully it's somewhat stable or relatively easy to troubleshoot if something's wrong with it.
  
 
== Music ==
 
== Music ==

Revision as of 18:38, 29 April 2007

ultram online cheap clomid free sagem ringtones nextel ringtones cheap alprazolam ultram online cheap alprazolam free samsung ringtones cheap viagra motorola ringtones viagra online phentermine online ultram online diazepam online cheap rivotril ativan online clonazepam online cheap tramadol carisoprodol online meridia online cheap valium zoloft online cheap cyclobenzaprine sonyericsson ringtones flexeril online online xanax nokia ringtones cheap valium wellbutrin online online sildenafil zoloft online valium online midi ringtones cialis online qwest ringtones free real ringtones free real ringtones polyphonic ringtones free tracfone ringtones cheap ultracet cheap norco free polyphonic ringtones levitra online cheap ambien cheap sildenafil prozac online xanax online ortho online free funny ringtones vicodin online cheap phentermine cheap norco buy lortab cheap hydrocodone ativan online buy paxil mono ringtones valium online cheap tramadol zoloft online hydrocodone online viagra online albuterol cheap rivotril free verizon ringtones lorazepam viagra online order didrex order phentermine cingular ringtones ericsson ringtones free sony ericsson ringtones free motorola ringtones zanaflex online order flexeril samsung ringtones free nokia ringtones cheap diazepam sonyericsson ringtones buy lorazepam real ringtones rivotril buy ambien cheap albuterol cialis online ambien online free sagem ringtones norco online meridia online cheap nexium mono ringtones hgh online ultram online ativan online buy wellbutrin free free ringtones diazepam online sprint ringtones buy lortab carisoprodol online verizon ringtones clomid online xenical online order xanax free ringtones cheap wellbutrin buy carisoprodol tracfone ringtones sharp ringtones ativan online buy norco free sony ericsson ringtones free tracfone ringtones sonyericsson ringtones soma online meridia online buy zyban clonazepam online free music ringtones cheap cyclobenzaprine ativan online cheap paxil ativan online but nexium free mp3 ringtones cheap hgh buy propecia samsung ringtones ortho online but zyban free punk ringtones lipitor online mtv ringtones cheap vigrx lorazepam online buy fioricet lorazepam online cool ringtones qwest ringtones cheap diazepam tenuate online cheap clonazepam fioricet online order ativan clonazepam online cheap propecia free mp3 ringtones buy hydrocodone cheap carisoprodol didrex online levitra nextel ringtones cheap zyban mp3 ringtones levitra online buy celexa tracfone ringtones cheap adipex free free ringtones music ringtones free nextel ringtones free nokia ringtones levitra online free free ringtones propecia online cheap nexium cialis buy soma mp3 ringtones tramadol online order phentermine funny ringtones nexium online buy wellbutrin order adipex cheap cialis ultram online free alltel ringtones free funny ringtones funny ringtones cheap celexa free real ringtones free ringtones samsung ringtones viagra online diazepam online ultram online vicodin online alprazolam online propecia online buy diazepam free mp3 ringtones cheap meridia cheap meridia free nokia ringtones adipex online xenical online hydrocodone free cingular ringtones free sagem ringtones The sound engine is coming along nicely, but with the semester starting, I'm not going to be able to get it finished right now. Hopefully it's somewhat stable or relatively easy to troubleshoot if something's wrong with it.

Music

Bundled Music

Music gets installed to ::Data() /music . That's also where the default ingame playlist will be placed. The following tracks exist:

  • Title Track (Thrown together by Lucifer as a placeholder, needs to be reworked into a real title track)
  • Gui Track (When the Glass Breaks, by Raoul Duke. This is getting a good response and will probably stay)
  • In-game tracks
    • Only Fortress Walk, by Lucifer, which needs more work, is currently played ingame.
    • Do I Know You?, also by Lucifer, is there, but a weird bug prevented it from playing.

No work is planned to fix the ingame playlist as it stands, until the aatrack format is created and supported by the eMusicTrack object. Then the ingame playlist using bundled music needs to be made to work.

External Music

There's a UI for this now. You can specify the complete path to a custom playlist, and then set it to use the custom playlist. Your custom playlist should be m3u format, but we're only loosely parsing it anyway. All you really need is a text file with one music file per line, complete path to the file. Lines that start with # are ignored, but in an m3u playlist those lines contain additional information we may want to parse for at some point. Playlists made in XMMS work fine.

The title track and gui track will still be played from bundled music! There is no plan to change this until we have support for some sort of music pack. Even then these tracks will be played from internal locations, and if the user wants his own custom tracks, he'll need to build a music pack to play them, when we have those ready to build.

Controlling the music player

There are some new global keybinds that you can use to control the media player ingame. These functions normally expected from a media player are supported by the keybinds:

  • Play (will restart the current track if it's already playing)
  • Stop
  • Pause
  • Previous (will always go to the previous track)
  • Next
  • Volume Up/Down (only controls music volume, sound effect volume is unaffected)

There are no default keybinds for these functions, you will need to go to Global Input Configuration and set them yourself.

Known Issues

There are mysterious crashes that are likely happening in the playlist class, or near it and happen when a new track is selected to play. It can happen when you join a server, or it can happen when you've been playing for awhile. There was a previous crash associated with the current song pointer, which is an iterator for the std::deque class, where it was unitialized, causing a segfault when the music player tried to play the first song. The playlist class and eMusicTrack have recently been factored a bit, so this is probably dust from that.

There is another mysterious crash with the bundled playlist. If all three lines are uncommented, the game will play two tracks and crash. No idea why, I have no intention of fixing this until the aatrack format is worked out and implemented.

  • I believe these two issues are fixed now, and it was a problem with GetFileMimeExtension when the string contains only whitespace (a bug caused by the playlist accepting empty strings, the playlist still accepts empty strings, which is still a bug to be fixed, but tString shouldn't fail because of it). If they are fixed, these two paragraphs can be removed.

Future Plans

In order to keep download size small and still be able to have full-size songs, I'm planning the aatrack format to allow us to take several clips and chain them together into a complete song. The format is based on the Windows INI file format, but the parser isn't written. There's a place in the code for it, but it's not finished.

Here is what it should look like:

[header]
author = Dave Fancella
title = Fortress Walk
record = None
year = 2006
genre = Rock

[tracks]
1 = fortresswalk.ogg

[sequence]
1

The header will contain information like what you'd expect to see in id3 tags in mp3 and ogg vorbis files. This is for the entire song, but the song itself is broken down into several tracks. The tracks section will list each track and give it an identifier. Here, the identifier for the only track is "1", but it's intended that any arbitrary identifier can be used. The sequence section will then list the sequence of the tracks, by identifier.

The sequence section deviates from the Windows INI file format, but the rest doesn't. The sequence section should contain on each line a track to be played. I'd like to have the idiom "1*4" supported, where sequence "1" will be repeated 4 times.

eMusicTrack should support this format, and there is already a placeholder method to handle it. It needs to be hidden from the callers, so the caller and indeed the playlist object shouldn't care what format the files are, and eMusicTrack will just do the right thing for any file.

Sound Effects

Sound effects are partially implemented. Here's what works:

Pushbutton effects

There are two kinds of pushbutton effects. There's a simple pushbutton, which just plays the effect at its volume, with no effects processing. There's a 3d pushbutton effect which takes an eCoord and plays the effect in 3d. This is handled by function overloading, so to play any kind of pushbutton effect, you will always use eSoundMixer::PushButton, but the argument list changes if you want to have a 3d effect.

All sound effects are mapped as enums, so you will say "PushButton(CYCLE_MOTOR);", for example, to play the cycle motor sound. Check eSoundMixer.h for a complete list. This enum mapping is likely only temporary! But it's easy to find, so don't be shy about supporting more sound effects.

Desired Pushbutton effects

  • Brakes
  • Accelerator
  • Enter the game
  • Leave the game (both will be played when joining a server and also when entering a local game)
  • Begin of round
  • End of round
  • Begin of match (supersedes round start)
  • End of match
  • Man death sound (to go with an explosion, should have these options:
    • Suicide
    • Killed
    • Team killed

...since those options are alread in the code)

  • Wall drop (nothing complex, for now...)
  • Sound when a new player joins (for players already there)
  • Zone spawn (I have one already)
  • Zone collapse
  • Player kicked
  • 10 minute warning
  • 5 minute warning
  • 2 minute warning
  • 1 minute warning
  • 30 second warning
  • 10 second warning
  • You have been kicked
  • You have been banned (please keep these two clean :) )

Continuous effects

This includes the cycle motor and the grind effect. This is unimplemented, although I've tried several methods to make it work. Here is how it should look:

Whenever the eGameObject of camera focus is changed, eSoundMixer gets a new owner. When an eGameObject spawns, if it has a continuous effect, it should direct eSoundMixer to start playing it. In the PlayContinuous argument list is the eGameObject that generates the sound. Using an effect callback, the mixer should compute the 3d effect for that sound based on the eGameObject that owns the sound and the eGameObject that has camera focus.

So, when a gCycle spawns, it needs to give the cycle motor sound. This part works. But when the cycle dies, it needs to end the sound, and this part doesn't work.

I don't know how the grind is handled now, but it needs to be a single sound file looped, and whenever a grind is detected, PlayContinuous should be used to play it. This will allow a cycle to get grinding noises from both sides when it's in a tunnel!

Standard Effects Processing

We need to have several effect processors that we use on all effects. None of them are implemented, but two of them need to be implemented for continuous effects to work at all.

  • Speed variation (only used for cycle motor and grind, and any other sound that needs to vary it's speed)
  • 3d effect (we might be able to use SDL_Mixer's, as we are now, but I'm not counting on it)
  • Doppler effect
  • Reverb

The reason I don't think we can rely on SDL_mixer's 3d effects is because it's a one-off call. We need something that will be able to compute loosely in realtime based on the cycle's changing position, so if an explosion happens immediately in front and to the right of a fast moving cycle, that explosion effect needs to be doppler shifted, and it also needs to feel like the cycle is driving past it. I intend to do this first by copying and pasting the SDL_Mixer effect into our own callback and then tweaking it to work with our own data structures.

Speed variation is a complex topic that I won't get into, except to say that we need to support varying the motor speed in the same way armagetron has traditionally done it. The doppler effect is separate from this, but similar. I expect z-man has the formulas we need to implement it, once a basic effect callback system is implemented.

The reverb effect is only a possibility, not a plan. The idea is that we could vary the reverb of any given effect based on it's position in the grid. So on a really large grid, for sound effects in the middle that are also heard in the middle, no reverb makes sense. But sound effects in the middle that are heard by the walls should have a bit of an echo. There are some good, low-cpu-draining ladspa reverbs we can use here if need be, but we may not do it at all. If we do it, it's intended only for sound effects that will have a 3d effect applied.

Known Issues

The problem I'm having with PlayContinuous is that one or the other or both of the eGameObjects involved, either the sound owner or the mixer owner, are being deleted, and the mixer is not finding out about it in time, so it segfaults trying to compute the 3d effect on one or more eGameObjects that don't exist. This is probably a simple fix, but it's something someone who knows more about how the eGameObjects are managed could give the right comment or something to point me in the right direction. :) Hopefully after the 0.2.8 release we can get this straightened out.

No speed variance effects means there's currently no way to confirm the 3d effect on the cycle motor works. So this needs to be implemented, along with the effects callback system.

Future Plans

I really like the idea of supporting LADSPA plugins to some extent, so I'd like the effects plugin architecture to be open-ended enough that we can add support for ladspa, but there's no ladspa requirement in the initial implementation. This is the only part of the sound engine that has yet to be laid out, so if you work on it, you'll be on new ground.

I'd like to support sound skins with this new setup, but that's as far as I've gotten in working it out. After I get the music engine working properly, and cycle motor and grind sounds, then I'll look at sound skins and spec them out, unless someone beats me to it.