View Issue Details

IDProjectCategoryView StatusLast Update
0000053FSSCPmultiplayerpublic2005-03-01 05:05
Reporterkasperl Assigned To 
PrioritylowSeveritytrivialReproducibilityhave not tried
Status closedResolutionopen 
Summary0000053: MP and MOD problems
DescriptionThe text below is a cleaned up series of test logs I have created while testing
Freespace 2 in various combinations of standard Freespace 2 (V1.20), the
Freespace to Freespace 2 Port mod and Freespace 2 source code project (V3.5.1).
The logs highlight some problems that currently exist with Freespace 2 when
playing multiplayer with a mod installed. Hopefully the logs will also help
provide information to solve some of the problems.

Test system details:
10Base-T Ethernet network on 5 port network hub.
750mhz AMD, 256MB RAM, Sparkle GeForce2 MX400.
450mhz Pentium 3, 128MB RAM, ELSA Gladiac GeForce2.


PART 1 of the current situation with multiplayer. The tests used the current
V2.0 FSPort and the posted V2.1 tables, minus the Karnak station since I
haven't got the associated model files and plus the fixes for the GTB Athena
and PVB Amun. Note that 'no unexpected errors' means nothing messed up that
isn't already messed up in normal FS2 network play (like having missiles stolen
instead of them launching properly, inaccurate hull status, support on
permanent rearm, support wrong IFF, missing wingman messages, inverted message
event order etc).

Test 1
Unmodified Freespace 2 (FS2.exe)
Basic Co-op test, without FSPort content (M-04.fs2 Rebel Intercept)
Result: Successful, no unexpected errors.

Test 2
Unmodified Freespace 2 (FS2.exe)
Co-op Stress test, without FSPort content (Vegablockade.fs2 Vega Blockade)
Result: Successful, no unexpected errors.

Test 3
Unmodified Freespace 2 (FS2.exe)
Co-op Medium Stress test, without FSPort content (Vegablockade.fs2 Vega
Blockade)
Included as many wingman ship types as possible (12 different).
Result: Successful, no unexpected errors.

Test 4
Unmodified Freespace 2 (FS2.exe)
Co-op MAXIMUM Stress test, without FSPort content (StressTest.fs2 Stress Test)
Included many ship types without crashing FRED.
Result: Host computer crashed on pressing the 'Toss' button after finishing the
mission.
Error Text:
Error: Unable to parse icons.tbl! Code = 5.

File:C:\projects\freespace2\code\Mission\MissionBr
iefCommon.cpp
Line: 708

Call stack:
------------------------------------------------------------------
------------------------------------------------------------------

Test 5
Unmodified Freespace 2 (FS2.exe)
Team play basic test, without FSPort content (MT-02.fs2 Mentu Duel)
Result: Successful, no unexpected errors.

Test 6
Unmodified Freespace 2 (FS2.exe)
Team play Stress test, without FSPort content (DestroyerDuel.fs2 Destroyer Duel)
Result: Successful, no unexpected errors.

Test 7
Unmodified Freespace 2 (FS2.exe)
Dogfight test, without FSPort content (DogfightTest.fs2 Dogfight Test)
It is noted that the FSPort weapons table has no dogfight weaponry, forcing the
use of a custom made mission.
Result: Successful, no unexpected errors.

Results Analysis
These tests have identified the situation players of standard Freespace 2 will
encounter while the FS2Port is installed and they want to play existing
Freespace 2 missions or custom missions that include no FSPort related content.

For Co-op the tests indicate that so long as players done go overboard when
adding ships to a mission or play missions previously made that way then things
should work ok.

Team play works successfully but the same issue with having too many ship types
is assumed to apply.

Dogfight is unplayable without making missions specifically for use with the
FSPort, as players will have no weaponry due to the removal of dogfight
specific weapons from the weapons table. With a custom mission, that excludes
FSPort content, in place the game functions without problems.

A possible additional test would be to remove the FSPort mod and try the 'Co-op
MAXIMUM Stress test' to see if it would crash FS2 regardless of the FSPort's
presence. (Conducted below...)


PART 2 of the current situation with multiplayer. A series of tests using
FSPort mod content in the missions.

Test 8
Freespace 2 (FS2.exe) + FSPort Mod
Dogfight test with most FSPort content included. (DogfightTestP.fs2 Dogfight
Test FSPort)
Test was run several times as there were only two players - thus two ships
tested per run.
Result: Successful, no unexpected errors.

Test 9
Freespace 2 (FS2.exe) + FSPort Mod
Co-Op test with FSPort content included. (FSM2-05P.fs2 The Sicilian Defense)
Result: Successful, no unexpected errors.

Test 10
Freespace 2 (FS2.exe) + FSPort Mod
Co-Op stress test with most FSPort content included. (VegaBlockadeP.fs2 Vega
Blockade FSPort)
Result: Successful, no unexpected errors.

(Skipping a MAXIMUM stress test with FSPort content. Presumably will be the
same result as before.)

Test 11
Freespace 2 (FS2.exe) + FSPort Mod
Team play test with FSPort content included. (LeviathanDuelP.fs2 Leviathan Duel
FSPort)
Result: Partially Successful. After the mission the client player suffered from
a two screen merged mess with the mouse pointer getting left pasted onto the
screen (See Test11.jpg at bottom URL). Went through the mission again without
restarting the game and got exactly same result.

Test 12
Freespace 2 (FS2.exe) + FSPort Mod
Team play stress test with most FSPort content included. (DestroyerDuelP.fs2
Destroyer Duel FSPort)
Result: Host computer crashed on pressing commit button after selecting the
mission.
Error Text:
Error: Couldn't open texture 'lights'
referenced by model 'capital2t-01.pof'

File:C:\projects\freespace2\code\Model\ModelRead.cpp
Line: 1802

Call stack:
------------------------------------------------------------------
------------------------------------------------------------------

Test Notes: Encountered similar texture loading problems many times before.
Frustrating and seemingly unsolvable. The Hecate 'capital2t-01.pof' isn't even
part of the FSPort mod so I'm ruling out needing to extract the textures to the
maps folder.

Test 13
Freespace 2 (FS2.exe) + FSPort Mod
Rerun of Team play test with FSPort content included to test for screen
problem. (LeviathanDuelP.fs2 Leviathan Duel FSPort)
Result: Exactly the same as in Test 11 except the exit game dialog box was also
messed up.

Test 14
Unmodified Freespace 2 (FS2.exe)
Co-op MAXIMUM Stress test without the FSPort mod installed (SStressTest.fs2
Ship Stress Test Co-Op)
Included many ship types without crashing FRED.
Result: Successful, no unexpected errors.

Results Analysis
These tests have identified the situation players of standard Freespace 2 will
encounter when playing multiplayer missions using FSPort content. The situation
regarding a 'Co-op MAXIMUM Stress test' was clarified.

Using exactly the same mission without the FSPort mod installed the 'Co-op
MAXIMUM stress test' was completely successful. So some care must be taken when
playing and making Co-op missions under the mod. Co-op with the FSPort appears
to work successfully, then, so long as the number of ship types in a single
mission doesn't exceed a certain level.

Team play with the FSPort has significant, if not serious, issues. With a basic
team play mission the client for some reason consistently suffers screen
problems on returning from the mission. Team play totally failed the stress
test. As a result team play under the FSPort is restricted to fairly basic
missions at best.

Dogfight is fully functional with FSPort.

A possible additional test would be a dogfight with FSPort content with 8 or
more players to determine if there are any stability issues.


PART 3 of the current situation with multiplayer. FSOpen is tested to see if it
fares any better where standard FS2 has been glitching and crashing.

It has been assumed that everything that has worked so far in standard
Freespace 2 will also work in the FSOpen source code project.

Test 15
Freespace 2 Source Code Project (FS2OpenV351.exe) + FSPort Mod
Team play test with FSPort content included. (LeviathanDuelP.fs2 Leviathan Duel
FSPort) Host-Team1, Client-Team2.
Result: Exactly the same result as in test 11. Also during the mission using
Interceptors for both banks, roughly just under half the time the missiles
didn't have any trails when launched.

Test 16
Freespace 2 Source Code Project (FS2OpenV351.exe) + FSPort Mod
Team play test with FSPort content included. (LeviathanDuelP.fs2 Leviathan Duel
FSPort). With teams swapped, Client-Team1, Host-Team2.
Result: Same again, except also the client crashed with an error message when I
pressed escape to get back to the join game screen. Took Harpoons and Hornets
this time. Again, missile trails were missing on roughly half the missiles.
Error Text:
Error: Could not load in Pop2!
File:C:\fs2_open\fs2_open\code\UI\WINDOW.cpp
Line: 257

Call stack:
------------------------------------------------------------------
------------------------------------------------------------------

Test Notes:
Tried hosting a game on the client and having the other computer join to see if
its joined game chat lobby had been affected. It too has suffered the same
problem, it's just the host won't see it unless they try to join someone else's
game after.

Test 17
Freespace 2 Source Code Project (FS2OpenV351.exe) + FSPort Mod
Team play stress test with most FSPort content included. (DestroyerDuelP.fs2
Destroyer Duel FSPort)
Result: Successful, no unexpected errors.
Test Notes:
I wonder what it is in the Leviathan Duel mission that's consistently causing
the screen problems, because this mission worked perfectly fine.

Test 18
Freespace 2 Source Code Project (FS2OpenV351.exe) + FSPort Mod
Co-op MAXIMUM Stress test with the FSPort mod installed (SStressTest.fs2 Ship
Stress Test Co-Op)
Included many ship types without crashing FRED.
Result: Client player got crashed when Alt-J jump out command was given. In
addition a not unexpected error was the game suffering from network traffic
problems making hull damage done by the client rarely register. The Leviathan's
turrets, for example, became invulnerable to the client's weapons.

Results Analysis
These tests have identified the situation players using the Freespace 2 Source
Code Project will encounter when playing multiplayer missions using FSPort
content. Once again a 'Co-op MAXIMUM Stress test' was undertaken, this time for
FSOpen. The future situation with using FSOpen will change as new versions are
released necessitating further testing.

Co-Op play suffered a crash with the stress test, which while a different crash
still leaves Co-Op play in the same situation as before.

Team play suffered from the same screen problem as in earlier tests. A crash
occured on the second attempt at testing team play so it best deemed
as 'Unstable'. Unexpectedly the team play stress test was completely successful
so perhaps a particular component of a mission is causing the problems?

Dogfight play was assumed to work completely as it does already in standard
Freespace 2.

Testing complete! Current situation identified.

SHORT SUMMARY:
Co-Op: Slight problems.
Team Play: Significant problems.
Dogfight: OK

Missions used in the tests may be acquired here:
http://www.angelfire.com/falcon/dan...fsportfiles.htm

------- Additional Comment 0000001 From towani@tankpolice.net 2003-04-03 16:18 -------
PART 4 of the current situation with multiplayer.

FS2Open Debug version may provide an insight as to what's going wrong here. Time
for some testing.

Test 19
FS 2 Source Code Project Debug (FS2OpenV351Debug.exe) + FSPort Mod
Team play test with FSPort content included. (LeviathanDuelP.fs2 Leviathan Duel
FSPort) Host-Team1, Client-Team2.
Result: Crashed on host pressing commit button after ship assignment.
Error Text:
Warning: Couldn't open texture 'fighter2s-02b'
referenced by model 'fighter2s-02.pof'

File:C:\fs2_open\fs2_open\code\Model\ModelRead.cpp
Line: 2233

Call stack:
------------------------------------------------------------------
    read_model_file() model_load() ship_model_change()
change_ship_type() multi_ts_create_wings() multi_sync_post_do()
multi_sync_do() game_do_state() gameseq_process_events() WinMainSub()
  WinMain() WinMainCRTStartup() KERNEL32.DLL bff8b537()
    KERNEL32.DLL bff8b3e9()
    KERNEL32.DLL bff89dac()
------------------------------------------------------------------

Test Notes: See debug logs 'Test19Clientfs.log' and 'Test19Hostfs.log' for more
information.

Test 20
FS 2 Source Code Project Debug (FS2OpenV351Debug.exe) + FSPort Mod
Co-op MAXIMUM Stress test with the FSPort mod installed (SStressTest.fs2 Ship
Stress Test Co-Op)
Included many ship types without crashing FRED.
Result: Host crash on cancel of multiplayer game selection after mission.
Error Text:
FS2OPENV351DEBUG caused an invalid page fault in
module FS2OPENV351DEBUG.EXE at 015f:005bfa63.
Registers:
EAX=0a5e085c CS=015f EIP=005bfa63 EFLGS=00010203
EBX=0a6dfd98 SS=0167 ESP=0a5dfc80 EBP=0a5e0810
ECX=0a5e083c DS=0167 ESI=00000000 FS=2f37
EDX=bff76859 ES=0167 EDI=00681868 GS=0000
Bytes at CS:EIP:
53 56 57 89 65 e8 8d bd 70 f4 ff ff b9 de 02 00
Stack dump:

Test Notes: See debug logs 'Test20Clientfs.log' and 'Test20Hostfs.log' for more
information.

Results Analysis
The only information this gives me at this stage is when and what errors occur
does not appear to be consistent. That errors keep occuring nearly, if not every
game, under these settings is consistent.

'A free Cfile_block could not be found.' is what stands out most in the debug logs.

Debug logs available at:
http://www.angelfire.com/falcon/danproject/fsportfiles.htm

Additional InformationReporter: towani@tankpolice.net
Assigned To: fs2source@warpcore.org (Edward Gardner)
http://fs2source.warpcore.org/bugzilla/show_bug.cgi?id=68
TagsNo tags attached.

Activities

Kazan

2005-03-01 05:05

developer   ~0001715

ancient and out of date

Issue History

Date Modified Username Field Change
2004-01-16 10:38 kasperl New Issue
2004-03-04 15:00 Kazan Priority normal => low
2004-03-04 15:00 Kazan Status new => acknowledged
2004-03-04 15:00 Kazan Projection none => major rework
2004-04-07 01:20 Kazan Severity minor => trivial
2005-03-01 05:05 Kazan Status acknowledged => closed
2005-03-01 05:05 Kazan Note Added: 0001715