Jump to content
Eternal Lands Official Forums
Entropy

Update

Recommended Posts

Ok, is there any significant code you want to commit before the update? Any fixes?

I think the current code is sufficiently stable and bug free, but if you have some last minute bug fix, let me know.

I'd like to make the update binary tomorrow, so people can predownload it and stuff.

Share this post


Link to post
Share on other sites
Ok, is there any significant code you want to commit before the update? Any fixes?

I think the current code is sufficiently stable and bug free, but if you have some last minute bug fix, let me know.

I'd like to make the update binary tomorrow, so people can predownload it and stuff.

I'll take a look at Alvie's "copy the ini file" patch and commit that as I think it will help solve a lot of questions. I'm not sure about anything else, haven't seen too many bug reports recently.

Share this post


Link to post
Share on other sites
Ok, is there any significant code you want to commit before the update? Any fixes?

I think the current code is sufficiently stable and bug free, but if you have some last minute bug fix, let me know.

I'd like to make the update binary tomorrow, so people can predownload it and stuff.

Wait, when are you thinking of having the next release? In the next few days? I did not realize it was so close.

 

I'm not sure about anything else, haven't seen too many bug reports recently.

Well, Florian is still having random crashes now and then, but that is to be expected I suppose. The Mac stuff will all get ironed out in time.

Share this post


Link to post
Share on other sites

There's the widows size/full screen toggle bug that eventually leads to a crash (for me at least). You've said it can wait for after the release so fine. I've spend hours trying to track that one down so far but have had no luck. *

 

Then there's the crash on map change bug that Grum is helping me resolve. A simple test in the code can prevent the crash for me but we can't explain the reason behind the problem. If the trap code is harmless for everyone one else, it might be an idea to include.

 

The other crash I know of was in update_sound() and I discussed with Torg adding the actors mutex lock as a possible fix. This has not been done so I assume Torg as ruled that out as the problem?

 

Edit: * The nearest I've got to this one is that the call of bind_texture_id() in get_and_set_texture_id() appears to be writing past allocated memory size. On my computer, this takes minutes to track using valgrind and I always get disconnected due to lag:(

Edited by bluap

Share this post


Link to post
Share on other sites
i noticed 1 thing I installed the RC 3 "correctly" and it wouldn't launch for some reason, i tried 5x and would nto work =/
I had the same problem. For some reason it doesn't report any error message when the client/server are mismatched. You need to start it with the command line option as described in the original RC3 post (el.exe test) to point it at the test server.

 

It would be more friendly if there was some sort of error reporting rather than the appearance of not doing anything.

Share this post


Link to post
Share on other sites

Then there's the crash on map change bug that Grum is helping me resolve. A simple test in the code can prevent the crash for me but we can't explain the reason behind the problem. If the trap code is harmless for everyone one else, it might be an idea to include.

 

Ok, then we can wait a few more days for that bug, since it is potentially annoying (lots of map changes uring normal gameplay).

Share this post


Link to post
Share on other sites
The other crash I know of was in update_sound() and I discussed with Torg adding the actors mutex lock as a possible fix. This has not been done so I assume Torg as ruled that out as the problem?
I've been really busy with other work I need to finish before I head to Japan (5 days now - Eek!).

Share this post


Link to post
Share on other sites
i noticed 1 thing I installed the RC 3 "correctly" and it wouldn't launch for some reason, i tried 5x and would nto work =/
I had the same problem. For some reason it doesn't report any error message when the client/server are mismatched. You need to start it with the command line option as described in the original RC3 post (el.exe test) to point it at the test server.

 

It would be more friendly if there was some sort of error reporting rather than the appearance of not doing anything.

indeed

Share this post


Link to post
Share on other sites
i noticed 1 thing I installed the RC 3 "correctly" and it wouldn't launch for some reason, i tried 5x and would nto work =/
Hmmm, that's strange. It should default to the main server (which will cause you other problems) not crash.

 

For some reason it doesn't report any error message when the client/server are mismatched.
Ent and I discussed this and he said there was no point. I don't agree, but the call is his.

Share this post


Link to post
Share on other sites

BTW, I just tested the client on the main server. It starts and works fine, but crashes on exit..

 

I had the same problem. For some reason it doesn't report any error message when the client/server are mismatched. You need to start it with the command line option as described in the original RC3 post (el.exe test) to point it at the test server.

 

It would be more friendly if there was some sort of error reporting rather than the appearance of not doing anything.

 

Your problem is called "selective reading". You rither have to do what is said in that post, or don't try the test client, simple as that! Else, we get banned from the forums.

 

Update

It seems that the crashes on the main server were caused by the sound. I had the sound on, but didn't have the sound files. This caused a client crash either on exit, or sometimes just when starting the client and logging in.

Share this post


Link to post
Share on other sites
Your problem is called "selective reading". You rither have to do what is said in that post, or don't try the test client, simple as that! Else, we get banned from the forums.
Actually, I don't have a problem (well, not as you assume). I tried it without the parameter to see what would happen (perhaps I should have said "I made the same discovery" instead of "same problem"). I found out that it didn't work and didn't provide any error message. Then I created an icon with the added parameter and it worked fine.

 

Please don't bash me for trying to help someone else seeing the same behavior that I saw. Thanks :lipssealed:

Share this post


Link to post
Share on other sites

Ok, then can you please describe the "didn't work" part? Because I tried it and works fine.

Where did you install it? What is your data directory? Any error messages in the error log when run on the main server?

Share this post


Link to post
Share on other sites

The "#beam me on IP" bug seems to be fixed somehow, don't know why but I can't reproduce it ATM.

 

The weird framebuffer issues on Mac are still there. I have FB activated and no problems, but switching it on and off will freeze my GUI. I had this also with google earth but coundn't reproduce it either. Plus, as my GUI freezes completely, I can't see if the client crashes and get a back trace ...

I don't know if it's related or not, but since I have USE_SHADERS on (around july 2007) I didn't have and freezes. The last freeze I got was when I tested the minimap clipping and compiled with standard release options which do not include shaders.

 

One thing which bothers me a little: the "upcoming xxx warning". I think it should differ sunset and sunrise.

Patch for that: https://developer.berlios.de/patch/download.php?id=2246

Share this post


Link to post
Share on other sites
Ok, then can you please describe the "didn't work" part? Because I tried it and works fine. Where did you install it? What is your data directory? Any error messages in the error log when run on the main server?
I did some digging around and I believe I have the key pieces of information identified.

 

Installation in: C:\Program Files\Eternal Lands RC3

Local data in: C:\Documents and Settings\brcarver\My Documents\Eternal Lands\test

Executed: C:\Program Files\Eternal Lands RC3\el.exe

Error log: C:\Documents and Settings\brcarver\My Documents\Eternal Lands\error_log.txt

Log started at 2007-11-16 09:04:41 localtime (Pacific Standard Time)

[09:04:41] Fatal error: Server profile not found in servers.lst for server: RC3\el.exe"

My uninformed guess: the code is grabbing that last white-space separated word from the execution string and using that to look for the server to use. With no argument given (like "test") it grabs what it can find ("RC3\el.exe") which doesn't match. It exits with no visual sign that it even started.

 

Just for grins, I changed the installation name to: C:\Program Files\Eternal_Lands_RC3 (removed the last couple blanks). The result was the same, but the error_log.txt now says:

Log started at 2007-11-16 09:18:35 localtime (Pacific Standard Time)

[09:18:35] Fatal error: Server profile not found in servers.lst for server: Files\Eternal_Lands

Which I think supports my theory about how it's looking for a server name argument.

 

I suspect that if I got rid of all the spaces, it would find no argument and default to something (main server?) and start instead of silently exiting.

Share this post


Link to post
Share on other sites
My uninformed guess: the code is grabbing that last white-space separated word from the execution string and using that to look for the server to use. With no argument given (like "test") it grabs what it can find ("RC3\el.exe") which doesn't match. It exits with no visual sign that it even started.
Hmmm, taking a really wild guess at it, that would seem to be a bug in whatever builds the list of arguments. I thought that was automatic (ie handled by the compiler - if so, eek!), but its possibly not.

 

You should _always_ have quotes around any filename with spaces in them. Normally by default Windows adds them so make sure they actually exist. If they do then it is something in how the arguments are processed and I have no idea. I also don't have time to look right now cos its past 5am and I'm going to bed.

Share this post


Link to post
Share on other sites

bkc56, I had the same problems as you did, by executing the client from Win Navigator. Try to see if you cna execute it from the command line (start/cmd).

 

And yes, this is a problem, we need to fix it before the update..

Share this post


Link to post
Share on other sites
bkc56, I had the same problems as you did, by executing the client from Win Navigator. Try to see if you cna execute it from the command line (start/cmd).
And that is exactly how I was executing it (from explorer).

 

I tried it from a shell prompt. It failed without quotes, so I did: "\program files\eternal_lands_rc3\el.exe" (yes, still has the underscores from my previous test) and I got the same error_log.txt entry:

Log started at 2007-11-16 12:29:34 localtime (Pacific Standard Time)

[12:29:34] Fatal error: Server profile not found in servers.lst for server: files\eternal_lands

Of course the following worked fine as I would expect: "\program files\eternal_lands_rc3\el.exe" test

Edited by bkc56

Share this post


Link to post
Share on other sites

I assume the CRT for dev-cpp (C RunTime library) is not passing/parsing arg[cv] as expected to the main() function. This is the only objective reason I see right now for this issue happening.

 

I am not sure how the Win API passes arguments to the executables, but I can clearly see that CRT is breaking teh arguments using the space delimiter, which proves wrong when executables are called with space-filled directories (althrough I'd expect the directory not to be there, unless the executable is called with a full path).

 

I'll try to investigate this tomorrow. I just set up a XP VM for EL dev.

 

Álvaro

Share this post


Link to post
Share on other sites

Meanwhile, I was thinking to have a quick hack, and if a server option is not recognized, the client should instead default to main.

So this would fix the windows problem, although eventually we still need to see why the hell it happens.

Share this post


Link to post
Share on other sites
... if a server option is not recognized, the client should instead default to main.
AND, put the current entry in the error log along with a statement along the lines of "defaulting to main server". That way people will know if it failed, why it failed and why then ended up on the main server when they tried to specify something else.

Share this post


Link to post
Share on other sites
Meanwhile, I was thinking to have a quick hack, and if a server option is not recognized, the client should instead default to main.
This has been committed.

 

AND, put the current entry in the error log along with a statement along the lines of "defaulting to main server". That way people will know if it failed, why it failed and why then ended up on the main server when they tried to specify something else.
And it now does this also.

 

I would have preferred it to additionally show something visibly on the screen, but that would require a lot more work (set and check an "invalid server requested" var) than I have time for due to this happening before the screen is inited etc..

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×