Contributing a Soundtrack

Can you help improve your favourite game? Hardcore C mages, talented artists, and players with any level of experience are welcome!
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Contributing a Soundtrack

Post by cazfi »

cazfi wrote:Most soundsets (or musicsets, if we decide to have the two separate)
patch #4559 separates them. Rationale being the user perspective: I don't want to be forced to use certain sounds just because I like musics in the soundset or vice versa. So there's also need to decide name for your musicset. :-)
mqtracks
Posts: 11
Joined: Sat Feb 08, 2014 2:16 pm

Re: Contributing a Soundtrack

Post by mqtracks »

cazfi wrote:
cazfi wrote:Most soundsets (or musicsets, if we decide to have the two separate)
patch #4559 separates them. Rationale being the user perspective: I don't want to be forced to use certain sounds just because I like musics in the soundset or vice versa. So there's also need to decide name for your musicset. :-)
Cool. I finally uploaded two sample tracks at http://gna.org/patch/?4562. You can use "mqtx" to name my musicset for now.
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Contributing a Soundtrack

Post by cazfi »

Are you still affected by [http://gna.org/bugs/?21780]bug #21780[/url] script.lua loading problems? If yes, we need to debug what is causing it for you, to fix it.
mqtracks
Posts: 11
Joined: Sat Feb 08, 2014 2:16 pm

Re: Contributing a Soundtrack

Post by mqtracks »

cazfi wrote:Are you still affected by [http://gna.org/bugs/?21780]bug #21780[/url] script.lua loading problems? If yes, we need to debug what is causing it for you, to fix it.
Nope. FYI I could get your mqtx modpack to work. Now I'm focusing again in composing, so if you don't mind I'll check your builds later.
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Contributing a Soundtrack

Post by cazfi »

mqtracks wrote:On top of that, is it hard to assign multiple songs to the same tag so that it randomly selects one without ever repeating the same one?
This is now implemented in patch #4669 Exact implementation is so that you can have up to 5 tags where only one used to be possible:
music_menu -> music_menu_0, music_menu_1, music_menu_2, music_menu_3, music_menu_4
mqtx
Posts: 10
Joined: Thu Mar 27, 2014 6:03 pm

Re: Contributing a Soundtrack

Post by mqtx »

Hi there! I finally found some time to upload new tracks at http://soundcloud.com/mqtx. I hope you like them. Your comments are all welcome! See Patch 4562 too. I'm having trouble compiling the last version at windows to test the mqtx modpack. I never really managed to run it and it would be great to see how this music feels in a real game play... I attach what it shows in the console. I have no idea about what is going on... (I downloaded the latest version of MinGW and followed everything you wrote at http://freeciv.wikia.com/wiki/Windows_I ... t_Creation)

I find this a bit frustrating... I've seen in other posts at this forum that you are uploading Windows builds at:
http://download.gna.org/freeciv/package ... gtk3-test/
Could you post 2.6 alpha versions too so we don't have to deal with these errors maybe?
This would allow me to have more time to write new tracks!

Anyway, thanks for all the work!
$ make gtk3-installer
make GUI=gtk3 FCMP=gtk3 wrap-gtk3
make[1]: Entering directory `/home/User/freeciv/freeciv-TRUNK/win32/installer'
# create build directory
mkdir -p build-gtk3
# configure
cd build-gtk3; ../../../configure --enable-client=gtk3 --with-followtag="win32-S2_6" --enable-fcdb=sqlite3 --enable-fcmp=gtk3
checking build system type... i686-pc-mingw32
checking host system type... i686-pc-mingw32
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... rm: cannot lstat `conftest.exe': Permission denied
rm: cannot lstat `conftest.exe': Permission denied
rm: cannot lstat `conftest.exe': Permission denied
no
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether byte ordering is bigendian... no
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for SQLite3 library >= 3.0.0... yes
checking for getaddrinfo... no
checking for inet_pton... no
checking for inet_ntop... no
checking for getnameinfo... no
checking for MagickWand-config in default path... found in /usr/bin
checking for MagickWand-config --cflags... -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16 -D_DLL -D_MT -DMAGICKCORE_HDRI_ENABLE=0 -DMAGICKCORE_QUANTUM_DEPTH=16 -D_DLL -D_MT -IC:/Users/User/soft/gnuwin32/include/ImageMagick-6
checking for MagickWand-config --libs... -LC:/Users/User/soft/gnuwin32/lib -lMagickWand-6.Q16 -lMagickCore-6.Q16
checking for all development tools needed for MagickWand... yes
checking for gawk... (cached) gawk
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking how to run the C preprocessor... gcc -E
checking whether ln -s works... no, using cp -p
checking how to print strings... printf
checking for a sed that does not truncate output... (cached) /bin/sed
checking for fgrep... /bin/grep -F
checking for ld used by gcc... c:/users/user/soft/gnuwin32/mingw32/bin/ld.exe
checking if the linker (c:/users/user/soft/gnuwin32/mingw32/bin/ld.exe) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /bin/nm
checking the name lister (/bin/nm) interface... BSD nm
checking the maximum length of command line arguments... 8192
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert i686-pc-mingw32 file names to i686-pc-mingw32 format... func_convert_file_msys_to_w32
checking how to convert i686-pc-mingw32 file names to toolchain format... func_convert_file_msys_to_w32
checking for c:/users/user/soft/gnuwin32/mingw32/bin/ld.exe option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)
checking for dlltool... dlltool
checking how to associate runtime and link libraries... func_cygming_dll_for_implib
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /bin/nm output from gcc object... ok
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking for dlfcn.h... no
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -DDLL_EXPORT -DPIC
checking if gcc PIC flag -DDLL_EXPORT -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (c:/users/user/soft/gnuwin32/mingw32/bin/ld.exe) supports shared libraries... yes
checking dynamic linker characteristics... Win32 ld.exe
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking for ar... (cached) ar
checking whether gcc and cc understand -c and -o together... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... c:/users/user/soft/gnuwin32/mingw32/bin/ld.exe
checking if the linker (c:/users/user/soft/gnuwin32/mingw32/bin/ld.exe) is GNU ld... yes
checking whether the g++ linker (c:/users/user/soft/gnuwin32/mingw32/bin/ld.exe) supports shared libraries... yes
checking for g++ option to produce PIC... -DDLL_EXPORT -DPIC
checking if g++ PIC flag -DDLL_EXPORT -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (c:/users/user/soft/gnuwin32/mingw32/bin/ld.exe) supports shared libraries... yes
checking dynamic linker characteristics... Win32 ld.exe
checking how to hardcode library paths into programs... immediate
checking whether C++ compiler works... yes
checking for uname... uname
checking size of int... 4
checking whether make sets $(MAKE)... (cached) yes
checking for ld used by gcc... c:/users/user/soft/gnuwin32/mingw32/bin/ld.exe
checking if the linker (c:/users/user/soft/gnuwin32/mingw32/bin/ld.exe) is GNU ld... yes
checking for shared library run path origin... done
checking for iconv... rm: cannot lstat `conftest.exe': Permission denied
rm: cannot lstat `conftest.exe': Permission denied
rm: cannot lstat `conftest.exe': Permission denied
rm: cannot lstat `conftest.exe': Permission denied
no, consider installing GNU libiconv
checking for libcharset... rm: cannot lstat `conftest.exe': Permission denied
rm: cannot lstat `conftest.exe': Permission denied
no
checking for nl_langinfo and CODESET... rm: cannot lstat `conftest.exe': Permission denied
rm: cannot lstat `conftest.exe': Permission denied
no
configure: error: Iconv is missing. You can get libiconv from http://gnu.org/, or try using --with-libiconv-prefix.
rm: cannot lstat `conftest.exe': Permission denied
make[1]: *** [build-freeciv-common] Error 1
make[1]: Leaving directory `/home/User/freeciv/freeciv-TRUNK/win32/installer'
make: *** [gtk3-installer] Error 2
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Contributing a Soundtrack

Post by cazfi »

Thanks for the new tracks. I've now added them to github project fcmodpacks, where I maintain such modpacks not (currently) part of main freeciv distribution: https://github.com/cazfi/fcmodpacks
As for what each track is used for, I've gone more by "what tags we need to populate to test the music system" than trying to guess what you really want. Testing with this already revealed a bug that switching to "combat mood" does not happen in all cases it should (initial first contact with a new player resulting in a new war-state does not activate it, only when one explicitly declares war).
One option for you to develop this would be to get github account, clone the fcmodpacks -repository, and develop it there, giving me just pull-requests to get updates from your repository to mine. I just don't know what kind of git-clients there is for Windows.

Your compilation problem looks really mysterious. It doesn't even seem like a configure check failing, but the configure itself failing (can't write a file it needs to do the test).

I'll try to make trunk Windows Installer build for you to use within a few days.
mqtx
Posts: 10
Joined: Thu Mar 27, 2014 6:03 pm

Re: Contributing a Soundtrack

Post by mqtx »

Thanks too for uploading the tracks.
cazfi wrote:As for what each track is used for, I've gone more by "what tags we need to populate to test the music system" than trying to guess what you really want. Testing with this already revealed a bug that switching to "combat mood" does not happen in all cases it should (initial first contact with a new player resulting in a new war-state does not activate it, only when one explicitly declares war).
Some ideas there:
I think that it is a bit confusing that you activate combat mood and combat music if you haven't even fought any troops yet with the new civilization you just found (sometimes you don't even have any of their towns on your map). I don't know how hard it is to trigger the war mood when there is the first fight with the nation you are at war with, and for example, come back to peace mood if you haven't had any fight for a number of turns even if there you are nations with whom you are at war...

Personally, I'm always at war with somebody when I play, so with your system I would never get to listen to peaceful tunes...
One option for you to develop this would be to get github account, clone the fcmodpacks -repository, and develop it there, giving me just pull-requests to get updates from your repository to mine
I did it already and sent you a simple pull request to test it.
I'll try to make trunk Windows Installer build for you to use within a few days.
That would be great!
User avatar
JTN
Elite
Posts: 473
Joined: Wed Jan 30, 2013 12:15 am

Re: Contributing a Soundtrack

Post by JTN »

mqtx wrote:I think that it is a bit confusing that you activate combat mood and combat music if you haven't even fought any troops yet with the new civilization you just found (sometimes you don't even have any of their towns on your map). I don't know how hard it is to trigger the war mood when there is the first fight with the nation you are at war with, and for example, come back to peace mood if you haven't had any fight for a number of turns even if there you are nations with whom you are at war...

Personally, I'm always at war with somebody when I play, so with your system I would never get to listen to peaceful tunes...
I've been vaguely wondering whether we need some sort of "cold war" mood in the game engine, for when you are technically (diplomatically) at war with at least one player (so there is tension and "peace" music isn't appropriate), but haven't had an actual fight / casus belli yet (or recently).
cazfi
Elite
Posts: 3077
Joined: Tue Jan 29, 2013 6:54 pm

Re: Contributing a Soundtrack

Post by cazfi »

Current implementation of the "combat mood" is that if there's no war activities in a set number of turns, it's not considered an active war. The war activities are actual combat and the declaration of new war (one would expect that war is declared for a reason - that there's going to be attack). In that sense the current situation might be even correct - war on first contact is not actively declared, but it's just that peace treaty has not been signed yet.
Post Reply