New binary for SVN users (#45)

The development of the game itself or new resources for it. Any new stuff you're working on would go here, as well as the discussion of in-development stuff.

Moderator: Developers

User avatar
Ben Urban
Cobol (Esteemed member)
Cobol (Esteemed member)
Posts: 829
Joined: Sat Oct 04, 2008 10:49 pm
Location: Maryland, USA
Contact:

Post by Ben Urban »

One thing to try would be building the source for a version that used to work, to make sure it still does.
Thanks to penguinflyer2222 for the avatar, and to penguinflyer5234 for hosting it.
User avatar
Shade
Potion Mimic (Senior Member)
Potion Mimic (Senior Member)
Posts: 7349
Joined: Thu Jul 24, 2008 12:25 pm
Location: Gensokyo

Post by Shade »

Ben Urban wrote:One thing to try would be building the source for a version that used to work, to make sure it still does.
I still have binary #10 in my folder, and it still works with the current revision and all of that, if that's what you mean. Only the newer binaries don't.
User avatar
Ben Urban
Cobol (Esteemed member)
Cobol (Esteemed member)
Posts: 829
Joined: Sat Oct 04, 2008 10:49 pm
Location: Maryland, USA
Contact:

Post by Ben Urban »

No, I mean rebuilding that binary from its source. Perhaps the build process changed, or the DLLs changed. Isolating the cause might be useful.
Thanks to penguinflyer2222 for the avatar, and to penguinflyer5234 for hosting it.
User avatar
Zefz
Squirrel Knight (Administrator)
Squirrel Knight (Administrator)
Posts: 3820
Joined: Wed Jul 23, 2008 1:27 am
Location: Norway
Contact:

Post by Zefz »

That is a very good idea. I'll have to get the old source somehow. Checkout/reverting takes ages now we have all the datafiles up there too.
User avatar
Zefz
Squirrel Knight (Administrator)
Squirrel Knight (Administrator)
Posts: 3820
Joined: Wed Jul 23, 2008 1:27 am
Location: Norway
Contact:

Post by Zefz »

Here clonks. Birdsey made a lot of changes to the new binary: http://www.2shared.com/file/5152183/807 ... ry-18.html

Make sure you test with and without [SDL_IMAGE]

Everyone else should download this binary as well. It fixes several other bugs in addition to some major improvements to the AI =)
bgbirdsey
{]-[0{0|307 (Developer)
{]-[0{0|307 (Developer)
Posts: 1864
Joined: Wed Jul 23, 2008 4:22 am
Location: Minnesota, USA

Post by bgbirdsey »

I'm going to make one more update today that should fix the waypoint stuff completely. :)

Brom and Mim do not freeze in the Gelfeet room now, but Brom now follows the gelfeet around instead of attacking???

Also, there is still a problem with loading .ogg sounds for the characters. I think the only way around it would be to make some kind of anonymized union like

Code: Select all


enum e_mix_type { MIX_UNKNOWN = 0, MIX_MUS, MIX_SND };
typedef enum e_mix_type mix_type_t;

struct s_mix_ptr
{
  mix_type_t type;
  
  union
  {
    Mix_Music  * mus;
    Mix_Chunk * snd;
  }
}

typedef struct s_mix_ptr mix_ptr_t;
Then we could set the type when we load the sound type and, use the type to dispatch the use of Mix_PlayMusic() and Mix_PlayChannel()?
bgbirdsey
{]-[0{0|307 (Developer)
{]-[0{0|307 (Developer)
Posts: 1864
Joined: Wed Jul 23, 2008 4:22 am
Location: Minnesota, USA

Post by bgbirdsey »

I think I have the sound stuff mostly worked out. I think I was able to get all the default sounds to load an play, but we will see...
User avatar
penguinflyer5234
Sheep (Developer)
Sheep (Developer)
Posts: 3025
Joined: Wed Jul 23, 2008 1:39 am
Location: Best Southwest

Post by penguinflyer5234 »

bgbirdsey, your update on the ConfigFile "class" has broke egoboo.
It is segmentation faulting when not in gdb and glibc detected a double free or corruption (!prev)
Backtrace as follows: (no line numbers...)

Code: Select all

#0  0xb7ffb430 in __kernel_vsyscall ()
#1  0xb7ca98a0 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7cab268 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0xb7ce716d in ?? () from /lib/tls/i686/cmov/libc.so.6
#4  0xb7ced454 in ?? () from /lib/tls/i686/cmov/libc.so.6
#5  0xb7cef4b6 in free () from /lib/tls/i686/cmov/libc.so.6
#6  0xb7cdd064 in fclose () from /lib/tls/i686/cmov/libc.so.6
#7  0x0805aeed in ConfigFile_destroy ()
#8  0x0805cf39 in setup_quit ()
#9  0x08063ab1 in memory_cleanUp ()
#10 0xb7cacd89 in exit () from /lib/tls/i686/cmov/libc.so.6
#11 0xb7c9468d in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#12 0x0804b2a1 in _start ()
...
bgbirdsey
{]-[0{0|307 (Developer)
{]-[0{0|307 (Developer)
Posts: 1864
Joined: Wed Jul 23, 2008 4:22 am
Location: Minnesota, USA

Post by bgbirdsey »

hmmmm... that should not be possible... :P

As you can see, the data is not freed until the program quits, as memory_cleanUp() is called after the exit () in libc_start_main().

It could be possible that I am freeing a NULL pointer, though.

Also, this error should only be happening when you exit the program, so broken doesn't mean "not playable"?

-----------------------------

This probably can't be from the latest version in the SVN because the stack unwind is missing a call to ConfigFile_close(), which is the only place that fclose () is used in configfile.c
  • - fclose ()
    - ConfigFile_close ()
    - ConfigFile_destroy ()
    - setup_quit ()
    - memory_cleanUp ()
    - exit ()
    - __libc_start_main ()
    - _start ()
-----------------------------

I may have found an error, as there were two declarations of

static ConfigFilePtr_t lConfigFile = NULL;

maybe something was getting confused...
User avatar
penguinflyer5234
Sheep (Developer)
Sheep (Developer)
Posts: 3025
Joined: Wed Jul 23, 2008 1:39 am
Location: Best Southwest

Post by penguinflyer5234 »

In 392 and 393 the error happens, Egoboo is still playable (and config saving works too), but it is bad to get a segmentation fault.
...
bgbirdsey
{]-[0{0|307 (Developer)
{]-[0{0|307 (Developer)
Posts: 1864
Joined: Wed Jul 23, 2008 4:22 am
Location: Minnesota, USA

Post by bgbirdsey »

just updated to 394. let me know if there is still a problem.

I'm going to try to get it to compile and run on my linux box.

------------------------------------------

It runs under mesa software rendering at about 4 frames per second.

No Seg Fault was reported to me, so it might be fixed.
User avatar
Zefz
Squirrel Knight (Administrator)
Squirrel Knight (Administrator)
Posts: 3820
Joined: Wed Jul 23, 2008 1:27 am
Location: Norway
Contact:

Post by Zefz »

I coded Brom not to attack the jelly. Attacking the Jelly could destroy his sword, which makes the module a lot harder (and it is nothing the player can control). He keeps a respectful distance now.

Maybe I should code Brom to attack only when the player gets engulfed in the jelly.
bgbirdsey
{]-[0{0|307 (Developer)
{]-[0{0|307 (Developer)
Posts: 1864
Joined: Wed Jul 23, 2008 4:22 am
Location: Minnesota, USA

Post by bgbirdsey »

Maybe there should be a "defend" function that sets a character's AI to the closest enemy that has attacked a team-member?

You would have to script some pretty specific stuff to make all characters escape a jelly. They would have to be able to see that their mount was hurting them and then try to jump free. Not complicated, but a bit of a pain since the code can't be inherited.
User avatar
Shade
Potion Mimic (Senior Member)
Potion Mimic (Senior Member)
Posts: 7349
Joined: Thu Jul 24, 2008 12:25 pm
Location: Gensokyo

Post by Shade »

Alright, I tried the newest binary now (with the newest revision as well).

With SDL_Image set to TRUE, the menu worked just fine, as did the status bars in-game and stuff. However, the water-stuff (in Abyss 2's case, the lava) still covers the whole sight, making it impossible to play.

With SDL_Image set to FALSE, the title image isn't shown (there's no white square either though, there simply is nothing, it's black), but the other images and the menu show up just fine. When I try to play a module, however, Egoboo crashes (I tried both Bishopia and the Ice Palace, since many modules suddenly vanished from my list of selectable modules for some reason). For the Ice Palace, log.txt spits out this:

Code: Select all

Starting Egoboo 2.7.0c...
INFO: Initializing high-performance counter...
INFO: Frequency is 3579545 hz
INFO: Initializing clock services...
INFO: Initializing filesystem services...
INFO: Game directories are:
	Game: D:\Programme\Egoboo 2.6.x (SVN)
	Temp: C:\DOKUME~1\Robert\LOKALE~1\Temp\
	Save: C:\Dokumente und Einstellungen\Robert\Eigene Dateien\egoboo\
	Import: C:\DOKUME~1\Robert\LOKALE~1\Temp\import\
INFO: Initializing SDL_Image 1.2.6... Success!
INFO: net_initialize: Networking not enabled.
INFO: Initializing SDL_mixer audio services... Success!
INFO: Initializing module linking... Success!
SCRIPT ERROR: modules\palice.mod\objects\rustmaggot.obj\script.txt - SetTargetToNearestLifeForm undefined
FATAL ERROR: Cannot load file! (basicdat\fonts.bmp)
INFO: memory_cleanUp() - Attempting to clean up loaded things in memory... Succeeded!
INFO: Exiting Egoboo 2.7.0c the good way...
bgbirdsey
{]-[0{0|307 (Developer)
{]-[0{0|307 (Developer)
Posts: 1864
Joined: Wed Jul 23, 2008 4:22 am
Location: Minnesota, USA

Post by bgbirdsey »

Clonkinator wrote: With SDL_Image set to FALSE, the title image isn't shown (there's no white square either though, there simply is nothing, it's black)
This is what is going to happen, since the only title image in the game is in .png format. So, if you turn off SDL_Image, you can't load it.

It is the same problem with the FATAL ERROR. Only a .png for the fonts.

There should be a workaround for this, like the possibility that .bmp is the least preferred format, so that there can be default .bmp and a preferred .png or .jpg...

You could copy an old version of the fonts.bmp into your /basicdat folder to get around this temporarily.
Locked