[Solved] Marathon 1 Segmentation Fault

Have a question, suggestion, or comment about Aleph One's features and functionality (Lua, MML, the engine itself, etc)? Post such topics here.
Post Reply
orb
Spazeroid
Posts: 5
Joined: Jul 29th '14, 05:38

I'm in crunchbang debian/sid and compiled alephone from source, when trying to run marathon 1 i get this error:

Code: Select all

Error at line 14 with element of type sounds, attribute tag center_button and value 1240: unrecognized tag
Segmentation fault
The relevent lines in Marathon.mml:

Code: Select all

<sounds
      terminal_logon="2230"
      terminal_logoff="-1"
      terminal_page="2232"
      teleport_in="2010"
      teleport_out="2020"
      got_powerup="1160"
      got_item="1170"
      crunched="2310"
      exploding="-1"
      breathing="-1"
      oxygen_warning="20200"
      adjust_volume="2000"
      button_success="2232"
      button_failure="1220"
      button_inoperative="20180"
      ogl_reset="1240"
      center_button="1240">
    <dialog index="0" sound="2330"/>
    <dialog index="1" sound="20140"/>
    <dialog index="2" sound="4040"/>
    <dialog index="3" sound="2270"/>
    <dialog index="4" sound="1180"/>
    <dialog index="5" sound="2232"/>
    <dialog index="6" sound="2232"/>
    <dialog index="7" sound="1220"/>
    <dialog index="8" sound="1390"/>
  </sounds>
When removing the line "center_button="1240">" Marathon seems to start, but I get greeted with an error 2 asking if I was sure I installed the game files correctly. And this is the new error in the terminal:

Code: Select all

XML parsing error: not well-formed (invalid token) at line 31 in object Marathon.mml
There were parsing errors in configuration file Marathon.mml
Error at line 1: element of type marathon has no child of type marathon
There were parsing errors in configuration file Interface_Rects.mml
Marathon 2, Marathon: Infinity & Marathon: Rubicon X all start up fine, any ideas?
Last edited by orb on Jul 29th '14, 18:09, edited 1 time in total.
User avatar
treellama
Vidmaster
Posts: 6110
Joined: Jun 2nd '06, 02:05
Location: Pittsburgh
Contact:

Hmm, center_button should be a recognized tag starting with Aleph One 1.1. What is the datestamp on your source tarball?

To alter that MML to leave out the center button sound, you need to leave the > since that closes the sounds tag. MML is just XML :)
orb
Spazeroid
Posts: 5
Joined: Jul 29th '14, 05:38

The source was from 2012...I downloaded the 2014 one, but I get this during make.

Code: Select all

Making all in FFmpeg
make[3]: Entering directory '/media/data/home/downloads/AlephOne-20140104/AlephOne-20140104/Source_Files/FFmpeg'
gcc -DHAVE_CONFIG_H -I. -I../.. -I../../Source_Files/CSeries -I../../Source_Files/Files -I../../Source_Files/GameWorld -I../../Source_Files/Input -I../../Source_Files/Misc -I../../Source_Files/ModelView -I../../Source_Files/Network -I../../Source_Files/Sound -I../../Source_Files/RenderMain -I../../Source_Files/RenderOther -I../../Source_Files/XML -I../../Source_Files -D__STDC_CONSTANT_MACROS -I/usr/include/libpng12  -D_FORTIFY_SOURCE=2   -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -DSDL -std=c99 -g -O2 -MT SDL_ffmpeg.o -MD -MP -MF .deps/SDL_ffmpeg.Tpo -c -o SDL_ffmpeg.o SDL_ffmpeg.c
SDL_ffmpeg.c: In function ‘SDL_ffmpegFree’:
SDL_ffmpeg.c:327:13: warning: ‘av_close_input_file’ is deprecated (declared at /usr/include/libavformat/avformat.h:1622) [-Wdeprecated-declarations]
             av_close_input_file( file->_ffmpeg );
             ^
SDL_ffmpeg.c: In function ‘SDL_ffmpegDecodeAudioFrame’:
SDL_ffmpeg.c:2039:9: warning: ‘avcodec_decode_audio3’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:3852) [-Wdeprecated-declarations]
         int len = avcodec_decode_audio3( file->audioStream->_ffmpeg->codec, ( int16_t* )file->audioStream->sampleBuffer, &audioSize, pack );
         ^
mv -f .deps/SDL_ffmpeg.Tpo .deps/SDL_ffmpeg.Po
g++ -DHAVE_CONFIG_H -I. -I../.. -I../../Source_Files/CSeries -I../../Source_Files/Files -I../../Source_Files/GameWorld -I../../Source_Files/Input -I../../Source_Files/Misc -I../../Source_Files/ModelView -I../../Source_Files/Network -I../../Source_Files/Sound -I../../Source_Files/RenderMain -I../../Source_Files/RenderOther -I../../Source_Files/XML -I../../Source_Files -D__STDC_CONSTANT_MACROS -I/usr/include/libpng12  -D_FORTIFY_SOURCE=2   -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -DSDL  -g -O2 -MT Movie.o -MD -MP -MF .deps/Movie.Tpo -c -o Movie.o Movie.cpp
Movie.cpp: In member function ‘bool Movie::Setup()’:
Movie.cpp:494:61: error: ‘AVStream’ has no member named ‘quality’
         audio_stream->codec->global_quality = audio_stream->quality = FF_QP2LAMBDA * (aq / 10);
                                                             ^
Movie.cpp: In member function ‘void Movie::EncodeVideo(bool)’:
Movie.cpp:618:21: warning: ‘int avcodec_encode_video(AVCodecContext*, uint8_t*, int, const AVFrame*)’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:4272) [-Wdeprecated-declarations]
         int vsize = avcodec_encode_video(vcodec,
                     ^
Movie.cpp:620:47: warning: ‘int avcodec_encode_video(AVCodecContext*, uint8_t*, int, const AVFrame*)’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:4272) [-Wdeprecated-declarations]
                                          frame);
                                               ^
Makefile:298: recipe for target 'Movie.o' failed
make[3]: *** [Movie.o] Error 1
make[3]: Leaving directory '/media/data/home/downloads/AlephOne-20140104/AlephOne-20140104/Source_Files/FFmpeg'
Makefile:464: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/media/data/home/downloads/AlephOne-20140104/AlephOne-20140104/Source_Files'
Makefile:505: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/media/data/home/downloads/AlephOne-20140104/AlephOne-20140104'
Makefile:400: recipe for target 'all' failed
make: *** [all] Error 2
I think this patch may help, but I'm a bit confused on how to apply it...?
http://sourceforge.net/p/marathon/code/5002
User avatar
treellama
Vidmaster
Posts: 6110
Joined: Jun 2nd '06, 02:05
Location: Pittsburgh
Contact:

You could --disable-fmpeg, that should let you build and will give you most of the functionality. You just won't be able to record videos.

We should probably release an updated version with that change integrated, but it's a lot of trouble to go through for such a little thing.
orb
Spazeroid
Posts: 5
Joined: Jul 29th '14, 05:38

That works (--disable-ffmpeg that is)! Thanks!
Post Reply