• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 22:59
CEST 04:59
KST 11:59
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
Code S Season 1 - RO12 Group A: Rogue, Percival, Solar, Zoun12[ASL21] Ro8 Preview Pt1: Inheritors16[ASL21] Ro16 Preview Pt2: All Star10Team Liquid Map Contest #22 - The Finalists22[ASL21] Ro16 Preview Pt1: Fresh Flow9
Community News
Code S Season 1 (2026) - RO12 Results02026 GSL Season 1 Qualifiers25Maestros of the Game 2 announced92026 GSL Tour plans announced15Weekly Cups (April 6-12): herO doubles, "Villains" prevail1
StarCraft 2
General
Code S Season 1 (2026) - RO12 Results Code S Season 1 - RO12 Group A: Rogue, Percival, Solar, Zoun Team Liquid Map Contest #22 - The Finalists Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool MaNa leaves Team Liquid
Tourneys
RSL Revival: Season 5 - Qualifiers and Main Event GSL Code S Season 1 (2026) SC2 INu's Battles#15 <BO.9 2Matches> WardiTV Spring Cup SEL Masters #6 - Solar vs Classic (SC: Evo)
Strategy
Custom Maps
[D]RTS in all its shapes and glory <3 [A] Nemrods 1/4 players [M] (2) Frigid Storage
External Content
The PondCast: SC2 News & Results Mutation # 523 Firewall Mutation # 522 Flip My Base Mutation # 521 Memorable Boss
Brood War
General
[BSL22] RO16 Group A - Sunday 21:00 CEST [BSL22] RO16 Group B - Saturday 21:00 CEST Pros React To: Leta vs Tulbo (ASL S21, Ro.8) RepMastered™: replay sharing and analyzer site BW General Discussion
Tourneys
[BSL22] RO16 Group Stage - 02 - 10 May Escore Tournament StarCraft Season 2 [Megathread] Daily Proleagues [ASL21] Ro8 Day 2
Strategy
Fighting Spirit mining rates Simple Questions, Simple Answers What's the deal with APM & what's its true value Any training maps people recommend?
Other Games
General Games
Daigo vs Menard Best of 10 Stormgate/Frost Giant Megathread Nintendo Switch Thread Dawn of War IV Diablo IV
Dota 2
The Story of Wings Gaming
League of Legends
G2 just beat GenG in First stand
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Vanilla Mini Mafia Mafia Game Mode Feedback/Ideas TL Mafia Community Thread Five o'clock TL Mafia
Community
General
US Politics Mega-thread European Politico-economics QA Mega-thread Russo-Ukrainian War Thread 3D technology/software discussion Canadian Politics Mega-thread
Fan Clubs
The IdrA Fan Club
Media & Entertainment
[Manga] One Piece Anime Discussion Thread [Req][Books] Good Fantasy/SciFi books Movie Discussion!
Sports
2024 - 2026 Football Thread McBoner: A hockey love story Formula 1 Discussion
World Cup 2022
Tech Support
streaming software Strange computer issues (software) [G] How to Block Livestream Ads
TL Community
The Automated Ban List
Blogs
Sexual Health Of Gamers
TrAiDoS
lurker extra damage testi…
StaticNine
Broowar part 2
qwaykee
Funny Nicknames
LUCKY_NOOB
Iranian anarchists: organize…
XenOsky
Customize Sidebar...

Website Feedback

Closed Threads



Active: 2002 users

Making a game (Part 4, Sounds and Sound engine)

Blogs > 0x64
Post a Reply
0x64
Profile Blog Joined September 2002
Finland4613 Posts
June 01 2012 13:08 GMT
#1
Part 1
Part 2
Part 3

Hey guys.
I'm sorry I don't have access to the music file from here where I'm writing the blog post.
So I'll just give you a video our graphist made when he made the skeleton concept art.

http://skaiway.tumblr.com/post/22258556989/i-dug-my-own-grave-now-its-time-for-yours

Next blog post I will post a little bit about the level editor and the cool feature our game support in the level format.
Anyway onward with the topic of today!
Today I want to go quickly through the design of our sound system.
Last week, we had a sunday meeting with the team and finally had a look at the sounds.

We made a list of the core sounds we would use in our game and it looked something like this:
Skeleton walk %
Skeleton notices player %
Light Eater notices light %
Light Eater consumes light %
Chain dragging
IronBall dragging %
Item pickup %
Item release
Step sound %
Door sound %
Lights up
UI Button Sound
Game Over Sound
Level Completed Sound
Credits music
Additional variation of main music for different worlds

% = are sounds that are now mostly done.

Our sounds are now divided in three categories:
-Single shot sound. When a condition is meet play th sound once. (like a Button is pressed or the lighteater notice a light)
-Loop the sound (Dragging on the floor a chain or an ironball)
-Play a sound repeatedly with an interval. (Footsteps).


The footsteps were the tricky ones, we have few options. Play a sound, wait a certains time depending on the character speed before playing the second one. Or have a part of silence in the sound file and loop it, change the looped sound if the speed change (having like 2-3 sounds for different speed).
We decided to go for a simpler solution, play the sound when the distance from the last sound reach a threshold. The only downside with this is that if the player moves without going far enough, no sounds are played.

Now remains the questions of which sounds should be played. We can play sounds with volume but in practice, some phones don't support that feature yet perfectly and you end up with sound glitches.
3D sound is another way, on the phone's mono speaker, this means that the sound will be played quieter as it is further from the listener's position. (Should the listener be the player's avatar or the camera position?)
3D sounds didn't seems to pose performance issues but saddly it isn't adjusting dynamically when the object moves, it only adjust to the positions when the sound starts. So it isn't useful for looping sounds.
This is all a bit open still and probably we are going to and up with a mix of tradeoff.
3D sound is cool as is working straight away with xbox and windows builds.

The music is played through the multimedia API, this makes it easy to just play a mp3. Our musician is gifted and made a cool ambient demotrack, with guitars... Reminding little bit of diablo but not too much. Really perfectly fitting what we already had at that point. I hope he has time to make more variations we can use in different level sets.
The API is limited and you can only just play the song, you can't do smooth transition or even seamless looping, so the songs have fade in/fade outs and that will do just fine.

Thanks for following this serie
Little disclaimer: This blog is Teamliquid exclusive and I just want to share the fun we had in this project. It will be cooler to follow with you guys if we succeed or suffer epic failure !


*****
Dump of assembler code from 0xffffffec to 0x64: End of assembler dump.
-Kaiser-
Profile Blog Joined November 2011
Canada932 Posts
June 01 2012 17:45 GMT
#2
You could always program it so that the step timer resets when the player stops moving. It's probably not important enough to be a priority though.
3 Hatch Before Cool
0x64
Profile Blog Joined September 2002
Finland4613 Posts
June 02 2012 11:17 GMT
#3
I think the final version will be linked straigh with the animation of the 3d model, but current version is good enough to not bother.
Dump of assembler code from 0xffffffec to 0x64: End of assembler dump.
Please log in or register to reply.
Live Events Refresh
Replay Cast
00:00
2026 GSL S1: Ro12 Group A
CranKy Ducklings122
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
PiGStarcraft229
RuFF_SC2 198
ProTech137
NeuroSwarm 115
PattyMac 16
StarCraft: Brood War
NaDa 63
Icarus 6
Dota 2
monkeys_forever862
League of Legends
Doublelift3930
Counter-Strike
taco 920
Super Smash Bros
C9.Mang0361
Other Games
summit1g7329
tarik_tv3978
JimRising 436
WinterStarcraft348
ViBE57
Organizations
Other Games
gamesdonequick1122
Dota 2
PGL Dota 2 - Main Stream85
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 12 non-featured ]
StarCraft 2
• Hupsaiya 80
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Other Games
• Scarra1336
Upcoming Events
Replay Cast
6h 1m
RSL Revival
7h 1m
Classic vs GgMaChine
Rogue vs Maru
WardiTV Invitational
8h 1m
Percival vs Shameless
ByuN vs YoungYakov
IPSL
13h 1m
Ret vs Art_Of_Turtle
Radley vs TBD
BSL
16h 1m
Replay Cast
21h 1m
RSL Revival
1d 7h
herO vs TriGGeR
NightMare vs Solar
uThermal 2v2 Circuit
1d 11h
BSL
1d 16h
IPSL
1d 16h
eOnzErG vs TBD
G5 vs Nesh
[ Show More ]
Patches Events
1d 21h
Replay Cast
2 days
Wardi Open
2 days
Afreeca Starleague
2 days
Jaedong vs Light
Monday Night Weeklies
2 days
Replay Cast
2 days
Sparkling Tuna Cup
3 days
Afreeca Starleague
3 days
Snow vs Flash
WardiTV Invitational
3 days
GSL
4 days
Classic vs Cure
Maru vs Rogue
GSL
5 days
SHIN vs Zoun
ByuN vs herO
OSC
5 days
Replay Cast
5 days
Escore
6 days
The PondCast
6 days
WardiTV Invitational
6 days
Replay Cast
6 days
Liquipedia Results

Completed

Escore Tournament S2: W5
WardiTV TLMC #16
Nations Cup 2026

Ongoing

BSL Season 22
ASL Season 21
CSL 2026 SPRING (S20)
IPSL Spring 2026
KCM Race Survival 2026 Season 2
KK 2v2 League Season 1
Acropolis #4
SCTL 2026 Spring
RSL Revival: Season 5
2026 GSL S1
BLAST Rivals Spring 2026
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League S23 Finals
ESL Pro League S23 Stage 1&2
PGL Cluj-Napoca 2026

Upcoming

BSL 22 Non-Korean Championship
CSLAN 4
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
Maestros of the Game 2
2026 GSL S2
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
IEM Atlanta 2026
Asian Champions League 2026
PGL Astana 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.