Archy said:

Chocolate Doom LAN game is extremely slow!


Strange, I've had this before, too. Even if i had both server and client running on the same machine, like

$ chocolate-server

in one terminal and

$ chocolate-doom -connect localhost

in another.

But now that I want to reproduce this, it simply plays flawlessly. ?!

Share this post


Link to post

Whoh! The game was just as laggy as it was on the net!

Share this post


Link to post

Chocolate Doom's network code has a controller that is supposed to keep the clocks of the different clients in sync (if they aren't synced you get awful lag). It often doesn't work very well and I've been meaning to rewrite it.

For LAN play you might get better results using -oldsync on the command line.

Archy said:

P.S #3: When every I exit Chocolate Doom on my system, my mouse cursor goes away (right now I'm typing this with no cursor, navigating Iceweasel mouseless is interesting...). My WM/DE is LXDE (Openbox) if that helps you debug my situation. The cursor is actually still existent, just invisible.

What version of Chocolate Doom are you using? Can I assume you're using the latest version (2.0.0)?

Share this post


Link to post
fraggle said:

For LAN play you might get better results using -oldsync on the command line.

Indeed, it's better to use -oldsync. Without this, the game freezes for half a second and lags for few seconds when it starts (in my case). I always thought this was "normal" because other computers might not be ready. I've never experienced a freeze longer than three seconds, but lags are common every time we are four players on the same router.

Share this post


Link to post
fraggle said:

What version of Chocolate Doom are you using? Can I assume you're using the latest version (2.0.0)?


Chocolate Doom 2.0.0 on Debian 7.4 amd64.

Edit: I tried -oldsync and this time the game was completely frozen from the start when the computer I had trouble early was in the game. As long as that one troublesome computer is not playing the game runs smoothly regardless of the options. On the offending computer, like I mentioned earlier, even localhost "net" games are laggy. The offending computer was not like this till yesterday.

Share this post


Link to post
babo said:

One thing chocolate doom needs is the ability to toggle run/walk, most source ports just let you use the caps lock for this. Other than that choc doom is amazing, I am glad it keeps certain glitches that allow for grabbing keys, shortcuts, etc. that add depth to speedrunning.

It turns out it is possible to do this because of how LibSDL handles the capslock key: if you rebind caps lock to be your run key then you can toggle it on and off.

Archy said:

Edit: I tried -oldsync and this time the game was completely frozen from the start when the computer I had trouble early was in the game. As long as that one troublesome computer is not playing the game runs smoothly regardless of the options. On the offending computer, like I mentioned earlier, even localhost "net" games are laggy. The offending computer was not like this till yesterday.

Interesting that it's the presence of one particular machine. What's the specs on that machine? Particularly the kernel version (uname -a)

I have a rough idea of what the problem is and how it needs to be fixed, bug filed here:

https://github.com/chocolate-doom/chocolate-doom/issues/358

Share this post


Link to post

$ uname -a
Linux hostname-goes-here 3.2.0-4-amd64 #1 SMP Debian 3.2.54-2 x86_64 GNU/Linux
specs:
CPU: AMD A4 - 1200 1.0GHz/BGA
RAM: DDR3L 1066 4GB
HDD: 320GB 5400R SATA
Graphics: AMD Radeon HD 8180

Keep in mind that this machine previously worked just fine when it came to choco-net-games.

Share this post


Link to post

Noticed sound slice time and cache size options were added in current 2.0 branch (also according to previous thread). Also noticed snd_musiccmd was added; that is really sweet! Now I can use a real hardware roland sound canvas natively in Linux! On top of all that it comes with Strife support. Just incredible... Really incredible! I think I want to have baby's with you fraggle (or whoever added all this). And whoever did needs to bug Quasar and get it done with Eternity.

Share this post


Link to post
Holering said:

Noticed sound slice time and cache size options were added in current 2.0 branch (also according to previous thread). Also noticed snd_musiccmd was added; that is really sweet! Now I can use a real hardware roland sound canvas natively in Linux! On top of all that it comes with Strife support. Just incredible... Really incredible! I think I want to have baby's with you fraggle (or whoever added all this). And whoever did needs to bug Quasar and get it done with Eternity.

Haha, I just saw this. I'm glad you like it.

plums said:

Currently the main page at http://www.chocolate-doom.org/wiki/index.php/Chocolate_Doom links to v 1.6.0 as the download. Is that intentional?

I'm not seeing it.

Share this post


Link to post

Someone already fixed it, I should have when I saw it but for some reason thought it might have been intentional. Blame tiredness.

Share this post


Link to post

So, earlier I brought up an issue with Chocolate Doom's OPL2 playback. I'll elaborate a bit here:

Chocolate Doom frequently "mangles" custom music files. I always use OPL2 playback, and it seems that Vanilla Doom can play midis that Chocolate Doom either cannot, or cannot emulate well. When a midi gets mangled up, notes will fail to play, and instruments step on top of each other, canceling each other out and make the song otherwise impossible to listen to. To recap, a common issue with all of the midis that Chocolate Doom mangles:

* They are all fairly recent midis.
* They appear to all have intense channel usage.
* They're midis, not .MUS files.

Here's a package containing comparisons of two songs. In each folder, you'll fine a "chocolate" and a "vanilla" version. Listen to each and notice how the chocolate version gets butchered.

I also found a song that simply causes Chocolate Doom to crash when played back; it's in the root folder labeled "crash.midi". The four notes that count the song in do not play in Vanilla Doom, but Vanilla Doom can play the rest of the song back and does not crash. Playing the song back in Chocolate Doom causes the game to lock up.

In Vanilla Doom / Dos Box, I'm using an emulated Sound Blaster 16 card if that's any help.

Share this post


Link to post

For no apparent reason, the music in Chocolate Doom is suddenly far too loud now, drowning out the sound effects. I haven't updated it or anything. I have the SFX turned to maximum (15) and the music set to minimum (1), but the music is still too intrusive.

I'm running on Windows 7 and the music in Chocolate Doom is set to Native MIDI. Annoyingly, as far as I can tell, Win7 doesn't have any volume control options of its own that would allow me to set WAVE and synth volumes independently.

Oddly, ZDoom isn't suffering from this problem, and I can still use native MIDI (Microsoft GS Wavetable Synth) and get perfectly acceptable volume settings.

Is there any way to boost Chocolate Doom's sound effects louder than their normal maximum? That would really be the easiest fix.

Share this post


Link to post

If music in Chocolate is set to Native MIDI, the volume control slider does nothing. You should have a volume mixer that lets you set the MIDI volume, but I don't have enough win7 experience to say for sure or how to find it. (right click the volume icon?)

ZDoom actually alters the volume sent to the MIDI device, I believe.

I don't think there's a way to overamplify the sound effects, you'd probably get some nasty distortion anyhow.

Actually I was thinking it would be nice if Chocolate could change the HW volume when using native MIDI, it would certainly be more useful than a slider that does nothing. Wonder how feasible this is.

Share this post


Link to post

Actually, the music volume slider in Chocolate Doom works fine for me, even with Native MIDI. The problem is, the available settings are either "off" (zero), "too loud" (1) or "WAY too loud" (2-15).

Frustratingly, the volume settings have been fine for a long while, but something threw the volume settings out of whack in Chocolate Doom. Now the music is way too loud and there's seemingly nothing I can do about it except turn it up louder.

EDIT: That's weird: Turning up the music volume slider in Chocolate also increases the SFX volume, so the louder the music gets, the louder the sound effects get. Yet the SFX slider has no effect on the music volume: I can turn the SFX slider all the way down until I hear no sounds, but the music remains at the same volume.

And if I try to use OPL, then I just get no music at all, and the framerate takes a dive for some inexplicable reason. This is all really weird.

Share this post


Link to post

I believe this is a quirk of SDL_Mixer on Windows 7. ZDoom uses FMOD so it doesn't have that issue.

This problem motivated me to create this guide on using Timidity instead:
http://www.doomworld.com/vb/thread/50375/
The PrBoom-Plus instructions apply to some SDL_Mixer based engines like Chocolate-Doom.

Share this post


Link to post

Timidity also has problems though, the volume levels are quite wrong. MAP08 is a great example, the guitar note "echoes" are almost as loud as the guitar note itself.

I guess I should file a bunch of bugs with SDL_mixer and see if any of them might get fixed.

Share this post


Link to post

Yeah, and SDL_Mixer with timidity sometimes has a popping noise too.

Share this post


Link to post
plums said:

I guess I should file a bunch of bugs with SDL_mixer and see if any of them might get fixed.

Are the developpers of SDL_mixer still updating version 1.2 or they completely switched to version 2.0?

Share this post


Link to post
Mike.Reiner said:

I believe this is a quirk of SDL_Mixer on Windows 7. ZDoom uses FMOD so it doesn't have that issue.

This problem motivated me to create this guide on using Timidity instead:
http://www.doomworld.com/vb/thread/50375/
The PrBoom-Plus instructions apply to some SDL_Mixer based engines like Chocolate-Doom.

That fixes the volume issue--thank you--but the instrument samples are so much different from the usual Microsoft synth. Most (if not all) of the composers for the TNT: Revilution project I'm involved in use Microsoft wavetable synth to compose with, so I won't be hearing their songs as intended. I suppose there's not some way to emulate the MS synth with some sort of sound font?

Or, since so many people are forced to use Timidity to solve their music issues, maybe I should just convince the composers to test their compositions with EAWPats. :)

Share this post


Link to post
Megamur said:

Most (if not all) of the composers for the TNT: Revilution project I'm involved in use Microsoft wavetable synth to compose with, so I won't be hearing their songs as intended.

Really? That's crazy.

Share this post


Link to post

I know Eris Falling specifically has MS synth in mind when composing, and, at least back in 2010, Bucket said he was reluctant to stop using it, too, since his tracks were specifically mixed for it.

Share this post


Link to post

Megamur, out of curiosity, do you have the same problem in PrBoom+ using PortMIDI as the music device? It should use the same MIDI device as Native MIDI in Chocolate Doom.

Share this post


Link to post

Strangely, PrBoom+'s (v2.5.1.3) PortMIDI sounds great. The SFX and music aren't at wildly different volume levels by default, and turning up the music doesn't make the SFX louder, unlike Chocolate Doom with Native MIDI.

Bear in mind that I'm just using regular Chocolate Doom v2.0.0, not a development version, if that makes any difference.

Share this post


Link to post

It's similar for me. I feel like using PortMIDI for MIDI playback would solve a lot of problems that people (primarily on Windows) are having with music. Any chance of that happening, fraggle?

edit: I'm not sure how to phrase that better but it's not meant to sound demanding or entitled, in case it comes off that way. Perhaps: is PortMIDI support something you'd consider for the future? Or is it something you have no interest in supporting?

Share this post


Link to post

When using libraries like PortMIDI the Vista audio stack issue with midiOutSetVolume affecting the process's digital wave out volume level is bypassed by instead sending MIDI volume messages to individual channels. This requires hand-holding streaming of every MIDI event to the system manually and is way more involved than using a library like SDL_mixer.

In SDL_mixer you hand it the song and it takes care of playing it for you. It calls midiOutSetVolume API on Windows, because up until Vista ruined everything, the only thing that function was ever supposed to do was affect the volume level of the MIDI device you passed an explicit handle for as the first parameter.

It's NOT a bug in SDL_mixer. It's an issue of design idiocy in the Vista audio stack; extreme laziness on the part of Microsoft in the desire to "dumb down" control of audio for people who can't find the ON button on their computer.

Share this post


Link to post
Quasar said:

It's NOT a bug in SDL_mixer. It's an issue of design idiocy in the Vista audio stack; extreme laziness on the part of Microsoft in the desire to "dumb down" control of audio for people who can't find the ON button on their computer.


Regardless of where the fault lies, it's pretty clear any kind of solution isn't going to come from Microsoft's end. In any case I appreciate the insight into PortMIDI, that is certainly much more involved than I had hoped/expected.

Share this post


Link to post
Megamur said:

That fixes the volume issue--thank you--but the instrument samples are so much different from the usual Microsoft synth. Most (if not all) of the composers for the TNT: Revilution project I'm involved in use Microsoft wavetable synth to compose with, so I won't be hearing their songs as intended. I suppose there's not some way to emulate the MS synth with some sort of sound font?

Or, since so many people are forced to use Timidity to solve their music issues, maybe I should just convince the composers to test their compositions with EAWPats. :)

Try this, it's what I use to compose with in Reason before I convert my tracks into proper MIDI. http://essel.spork-chan.net/rapidshare/Roland_SoundCanvas.sf2

fraggle said:

Really? That's crazy.

It comes closest to the SoundCanvas instrument set that Doom's music was originally written for. All my MIDIs for Back to Saturn X are written for it, too -- other soundfonts I've tried them with completely screw up the mixing and the instrument timbres, causing the songs to lose a lot of detail.

It also makes sense to target it when selecting instruments and setting up mixing levels because on a modern computer, it's the default playback method that 99% of users will hear if they don't customize their midi playback with an external replacement. If I can get a song to sound the way I want it to using the default instrument set (which is honestly pretty easy), it'll sound the same way for the vast majority of users. If I'm composing for a custom soundfont, whether it'll sound anything like it did when I composed it is anyone's guess.

Share this post


Link to post
This topic is now closed to further replies.