Stuff to finish before release - Page 4

Stuff to finish before release

Discuss the source code and development of Spring Engine in general from a technical point of view. Patches go here too.

Moderator: Moderators

User avatar
clericvash
Posts: 1394
Joined: 05 Oct 2004, 01:05

Post by clericvash »

A seperate box for desync messages that can just easily be turned off would be ideal.
Tobi
Spring Developer
Posts: 4598
Joined: 01 Jun 2005, 11:36

Post by Tobi »

I'm not going to add new features like that unless I'm really bored.

I made it so it should give desync message exactly so often that there's always one desync message active in the infolog. I think that works fine, but I the new desync detect code I made just after 0.74b3 was released has some problems probably causing it to detect desync only once and not continuously.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

It could be done via lua though
User avatar
Neuralize
Posts: 876
Joined: 17 Aug 2004, 23:15

Post by Neuralize »

Is it possible to have the game shut down desyncers? Many noobs don't even know what this means.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

someone could write a lua popup box that tells the user a desync has occurred what it means and what todo.
MelTraX
Posts: 470
Joined: 02 Jan 2007, 16:18

Post by MelTraX »

I can add handling of desync messages (not kicking but displaying it somewhere else) to IceUI.. For example having only one message per player and then change all TeamLogos of that player to a different icon..

AF, if you use a lua popup box for that it would have to be included in Spring and enabled by default.. Because most newbies that don't know about desyncs probably also don't know about Lua..
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

I was thinking the lua widget would be on by defult and in the installer.
el_matarife
Posts: 933
Joined: 27 Feb 2006, 02:04

Post by el_matarife »

MelTraX wrote:I can add handling of desync messages (not kicking but displaying it somewhere else) to IceUI.. For example having only one message per player and then change all TeamLogos of that player to a different icon..
Honestly, just having it pause the game and bringing up an easy unit handover screen would be great. The people who "break" in a desync just need to give their units to a teammate or if they're the only one on a team self destruct and quit. Sticking around isn't doing anyone any favors. I know it sounds harsh, but its better than having the whole game be wrecked. Losing a few people is better than having to start over from scratch in my opinion.
Also, it'd be great if it paused it if someone hasn't responded in 5 or 10 seconds. At that point they've either crashed, or have been lagging long enough that you should pause it anyway. The pause will allow someone to take their units or automatically self D them if they disconnect.
MelTraX
Posts: 470
Joined: 02 Jan 2007, 16:18

Post by MelTraX »

Yeah, I kinda agree to that stuff.. But pausing and maybe auto-kicking is no feature of the GUI.. So someone else just make a normal widget for that.. ;)
el_matarife
Posts: 933
Joined: 27 Feb 2006, 02:04

Post by el_matarife »

MelTraX wrote:Yeah, I kinda agree to that stuff.. But pausing and maybe auto-kicking is no feature of the GUI.. So someone else just make a normal widget for that.. ;)
Well, adding pause button and a GUI for the kicker fits your project. Does your player status window still show player CPU % and ping time? Those would be nice to color code so that it'd be obvious to everyone when someone is lagging. (Apologies for derailing this to discuss his GUI project)
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

Spring should always popup a message box saying why ti exited when it closes, except for the following situations:

shift+esc
end game dialog exit button

For example if the connection tot he server times out the game exits, and the user thinks that spring has crashed and that we've let a bug pass through. They don't realize the connection timed out nobody told them, they may not realize that its timed out and they may be able to fix it themselves if they knew. It really shows off the rough edges on the engine and gives a terrible impression to users.
Tobi
Spring Developer
Posts: 4598
Joined: 01 Jun 2005, 11:36

Post by Tobi »

Agreed, maybe I can find some time to go through the error handling before release.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

What if we just searched for every mention of the exit function and add the necessary messagebox, if I have the time I'll doit if you tell me what the two parts are (messagebox, and exit).
Tobi
Spring Developer
Posts: 4598
Joined: 01 Jun 2005, 11:36

Post by Tobi »

It needs a bit of clean up in general. There's a handleerror macro that should be removed IMHO and replaced by throw statements with appropriate exceptions. These exceptions should be designed such that there are different ones for different types of errors, like there is one for content_error now (should be renamed ContentError TBH).

Then there can be a number of catch blocks in main that use the cross platform messagebox functionality (may need a little refactor) to show the appropriate error and call exit() afterwards.

Also some normal quits, which are probably handled with "done" variables in while loops should be promoted (degraded?) to exceptions, like the "client read net wanted quit" one before game has ended. (This is mostly the issue you pointed out.)

But apart from that yeah it's just searching for exit and maybe the functions/exception classes that call exit directly or indirectly (e.g. handleerror, content_error).
User avatar
Argh
Posts: 10920
Joined: 21 Feb 2005, 03:38

Post by Argh »

Um, S3Os that are ghosted are still covered with the default patchwork quilt of OTA textures, if a mod is using both S3O and 3DO. I haven't tested with NanoBlobs yet. Kind've important, but certainly not vital.
Tobi
Spring Developer
Posts: 4598
Joined: 01 Jun 2005, 11:36

Post by Tobi »

Ugh seems we got a regression there.
User avatar
FLOZi
MC: Legacy & Spring 1944 Developer
Posts: 6240
Joined: 29 Apr 2005, 01:14

Post by FLOZi »

Indeed. I tested it with S44 which has both when developing the patch and it worked correctly. :|
Tobi
Spring Developer
Posts: 4598
Joined: 01 Jun 2005, 11:36

Post by Tobi »

Fixed, stupid typo of me (converted 1 to false when refactoring int to bool :P)
User avatar
Zydox
Lobby Developer
Posts: 453
Joined: 23 May 2006, 13:54

Post by Zydox »

Tobi wrote:Fixed, stupid typo of me (converted 1 to false when refactoring int to bool :P)
... http://www.bash.org/?10958
User avatar
FLOZi
MC: Legacy & Spring 1944 Developer
Posts: 6240
Joined: 29 Apr 2005, 01:14

Post by FLOZi »

*bump*

So, how far off is .75 now? Seems like the release keeps slipping. :(
Post Reply

Return to “Engine”