Fragile Allegiance IPX Multiplayer

Having problems with a specific game or application? Post your problems here!

Fragile Allegiance IPX Multiplayer

Postby ghosthammer » 2008-1-24 @ 19:18

Hey everyone,

So a friend and I have been trying for a long time (last week) to get Fragile Allegiance's multiplayer to work using Dosbox's IPX emulation. We are using the CD version of the game, but every time the multiplayer crashes about 5-15 minutes into the game. It reports a "Random seed error", I presume indicating that the host and client have gone out of sync. Here's what we've already tried:

> 16 mb ram (made the game more unstable, so we're using 16 mb now)
Core: Normal, Auto, and Dynamic. All tried.
Cycles: 13000, 20000, 40000, auto. With all core combinations. Well,
EMS: On/off

We've been trying this both over a home wireless network and over the internet; doesn't seem to make a difference. I don't know if it's worth noting, but when I start two instances of dosbox on my computer and play a network game that way the problem doesn't occur. But that's not too surprising, giving that only the server or the client is doing something at any given time.

So do you guys happen to have any ideas? I'm a little frustrated, but I'd appreciate any help. If I've omitted any important details, let me know.

Thanks again!
-Walt

PS Dosbox 0.72, Core 2 Duo 1.8ghz, 2gb ram, geforce 7400go, vista 64 bit, using soundblaster emulation

PPS Would this game use the FPU? Could it be FPU rounding differences between my machine and my friend's? Is there any way to test this theory with dosbox?

PPPS Dumb question, perhaps. I was looking at the ipxnet code a bit, and I was wondering if the communications protocol allowed assured deliverance or not? Could dropped packets have something to do with this? I'd imagine that the original dos ipx was pretty reliable in terms of packets loss.
ghosthammer
Newbie
 
Posts: 19
Joined: 2008-1-24 @ 10:00

Re: Fragile Allegiance IPX Multiplayer

Postby ghosthammer » 2008-1-25 @ 10:44

Reply because the problem progressed:

So, going on the UDP ordering hunch, I d/led the latest dosbox repository and swapped out all of the SLDNet_UDP functionality for an old reliable UDP implementation I had. Presto - no network flaws whatsoever, even with varying cores. I'm going to investigate a little more, but I was wondering if it would be welcomed if I patched in a form of reliable UDP networking (and in-order reliable UDP networking) as various switches in the config file. That way, games such as Fragile Allegiance that require (yes, at a loss of speed) the stricter criteria on packets would run properly.

-Walt
ghosthammer
Newbie
 
Posts: 19
Joined: 2008-1-24 @ 10:00

Re: Fragile Allegiance IPX Multiplayer

Postby MiniMax » 2008-1-25 @ 14:09

I don't speak for the developers, but I hope that (quality) patches will gladly be accepted, especially if they address a problem with playing DOS games.
DOSBox 0.73 ReadMe | DOSBox Wiki | DOSBox 60 seconds guide | How to ask questions
_________________
Lenovo M58p | Core 2 Quad Q8400 @ 2.66 GHz | Radeon R7 240 | LG HL-DT-ST DVDRAM GH40N | Win 10 Pro
User avatar
MiniMax
Moderator
 
Posts: 5128
Joined: 2004-1-18 @ 04:15
Location: Stockholm, Sweden, Europe, Earth Interests: Old games & young women

Re: Fragile Allegiance IPX Multiplayer

Postby bobo » 2008-3-02 @ 00:08

i would like to know the solution you used to fix this problem, this is one of my favourite games ever!
bobo
Newbie
 
Posts: 2
Joined: 2008-3-01 @ 23:20

Re: Fragile Allegiance IPX Multiplayer

Postby h-a-l-9000 » 2008-3-02 @ 18:02

Hmm if this is a problem with sdlnet it would be best to fix that library...
1+1=10
h-a-l-9000
DOSBox Author
 
Posts: 4512
Joined: 2005-2-23 @ 00:14

Re: Fragile Allegiance IPX Multiplayer

Postby ghosthammer » 2008-3-10 @ 00:33

1. I'm still working out the kinks with the help of bobo.
2. It's not a problem with SDLnet, I think it's a problem with the game's assumptions about IPX networking.

~Guesswork

For instance, a lot of dos was based on hardware interrupts... when an IPX packet is received, unless I'm mistaken, an interrupt is called. Thus, FA submits a packet and assumes that the next received packet will be relevant to the packet sent, because the other computer should have interrupted whatever it was doing and replied to the sent packet.

~End guesswork?

However, with default UDP networking (which is not an error) packet delivery is neither guaranteed to arrive or be in order. So when these packets arrive out of order, it doesn't work. How stingy FA is about the ordering I have yet to determine... Bobo said he got a 5 hr game with my latest fixed EXE which uses reliable delivery... But then it crashed (Still, the longest game I've gotten in without the fix was 20 minutes, so a huge improvement).

So, I don't know much about IPX networking. My guess would be that when FA was made, the type of LAN that this game would be played over allows for instant delivery? Which, if they relied on that... May mean that a duplex model (simultaneous sending and receiving) won't work. I don't know though. Any help would be appreciated...

Until then I'll dig through DosBox's IPX handling some and see when it receives messages I guess.
ghosthammer
Newbie
 
Posts: 19
Joined: 2008-1-24 @ 10:00

Re: Fragile Allegiance IPX Multiplayer

Postby h-a-l-9000 » 2008-3-10 @ 12:14

DOSBox's IPX was based on TCP once (which would provide delivery and sequence). I think they changed it because UDP produces less traffic. Might be worth to try the old functions. And maybe have it user selectable between safe/fast.
1+1=10
h-a-l-9000
DOSBox Author
 
Posts: 4512
Joined: 2005-2-23 @ 00:14

Re: Fragile Allegiance IPX Multiplayer

Postby ghosthammer » 2008-3-10 @ 16:08

Actually, you raise an interesting point... You wouldn't happen to know offhand which version of DOSBox used TCP would you?
ghosthammer
Newbie
 
Posts: 19
Joined: 2008-1-24 @ 10:00

Re: Fragile Allegiance IPX Multiplayer

Postby Qbix » 2008-3-10 @ 16:11

tcp gives lag much faster due to the corrections.
Water flows down the stream
How to ask questions the smart way!
User avatar
Qbix
DOSBox Author
 
Posts: 10917
Joined: 2002-11-27 @ 14:50
Location: Fryslan

Re: Fragile Allegiance IPX Multiplayer

Postby h-a-l-9000 » 2008-3-10 @ 16:23

Hm, looks like it was only during initial development...
The first IPX version already was UDP however there are some commented leftovers which hint at TCP...

http://dosbox.cvs.sourceforge.net/dosbo ... p?view=log
1+1=10
h-a-l-9000
DOSBox Author
 
Posts: 4512
Joined: 2005-2-23 @ 00:14

Re: Fragile Allegiance IPX Multiplayer

Postby ghosthammer » 2008-3-10 @ 16:31

Yeah, I saw those... I think they're just the coder boasting about UDP though (it's nice to code for because you don't have to transmit each packet's size before sending the packet's data, for instance). Oh well. I'm checking my reliability protocol for errors that would result in a packet being dropped. We'll see if that fixes it.
ghosthammer
Newbie
 
Posts: 19
Joined: 2008-1-24 @ 10:00

Re: Fragile Allegiance IPX Multiplayer

Postby bobo » 2008-3-30 @ 01:44

random seed error is what we keep getting.

anyone have any ideas on how to reduce/eliminate this?
bobo
Newbie
 
Posts: 2
Joined: 2008-3-01 @ 23:20

Re: Fragile Allegiance IPX Multiplayer

Postby Philzero » 2008-7-23 @ 15:25

Hi,

I hope there has been some progress with the IPX problem up to now. For years now I wanted to play a large map with high asteroid density in multiplayer with a good friend. Now that we both recieved our diploma, there is time for such a game. The fridge is loaded with pizza and energy drinks and we are ready to go. But we still get the random seed error after a few hours.
Is there really nothing we can do except reformatting and installing DOS?

Greetz,
Phil
Philzero
Newbie
 
Posts: 7
Joined: 2008-7-18 @ 23:45

Re: Fragile Allegiance IPX Multiplayer

Postby ghosthammer » 2008-7-23 @ 16:20

Yeah, unfortunately the last thing I haven't tried, which is a half-duplex sync over IP (each end has to request ability to send, THEN send), would cause way too much lag. Plus, I haven't had time to try it yet. Sorry. :(
ghosthammer
Newbie
 
Posts: 19
Joined: 2008-1-24 @ 10:00

Re: Fragile Allegiance IPX Multiplayer

Postby h-a-l-9000 » 2008-7-23 @ 16:28

Maybe it requires DOSBox's system clock not to drift so much.
1+1=10
h-a-l-9000
DOSBox Author
 
Posts: 4512
Joined: 2005-2-23 @ 00:14

Re: Fragile Allegiance IPX Multiplayer

Postby Philzero » 2008-7-23 @ 17:16

Too bad, but you still did a great job to enhance the IPX gameplay up to a few hours.
Why does the Dosbox need to emulate the IPX via TCP? Isnt it possible to somehow access a "real" IPX in Windows XP?
I dont know alot about network programming, so maybe this is totally stupid...
Philzero
Newbie
 
Posts: 7
Joined: 2008-7-18 @ 23:45

Re: Fragile Allegiance IPX Multiplayer

Postby h-a-l-9000 » 2008-7-23 @ 17:20

Because IPX is obsolete.
1+1=10
h-a-l-9000
DOSBox Author
 
Posts: 4512
Joined: 2005-2-23 @ 00:14

Re: Fragile Allegiance IPX Multiplayer

Postby ghosthammer » 2008-7-23 @ 18:59

Hal, you obviously know a lot more about the internal workings of Dosbox than I do . . . What do you mean / could it be adjusted?
ghosthammer
Newbie
 
Posts: 19
Joined: 2008-1-24 @ 10:00

Re: Fragile Allegiance IPX Multiplayer

Postby Philzero » 2008-7-23 @ 19:39

It is obviously obsolete but we still need it to play obsolete games :) . One can play Windows 95 games via an IPX network on XP after installing the IPX protocol. So it still remains in XP somehow and can be accessed...
Philzero
Newbie
 
Posts: 7
Joined: 2008-7-18 @ 23:45

Re: Fragile Allegiance IPX Multiplayer

Postby MiniMax » 2008-7-23 @ 19:43

Philzero wrote:Why does the Dosbox need to emulate the IPX via TCP? Isnt it possible to somehow access a "real" IPX in Windows XP?
I dont know alot about network programming, so maybe this is totally stupid...

As h-a-l-9000 said, IPX is becoming obsolete. It might still exists in Windows XP as an optional component, but in Vista you have to go through twists and turns to install IPX (as far as I know). So even if DOSBox could somehow access the IPX-stuff in Windows, it would not work for the majority of Vista users. DOSBox is also running on Linux, it is on Mac OSX, Irix, Solaris, even some PDA's, the Sony PSP - and none of those have IPX that DOSBox could tie in to. And I suspect, when Windows 7 comes out, IPX will be totally gone.

So it would be a waste of time and effort to try to use the real IPX networking. It would be better to improve the IP/UDP emulation, since that will work for a long, long time to come.
DOSBox 0.73 ReadMe | DOSBox Wiki | DOSBox 60 seconds guide | How to ask questions
_________________
Lenovo M58p | Core 2 Quad Q8400 @ 2.66 GHz | Radeon R7 240 | LG HL-DT-ST DVDRAM GH40N | Win 10 Pro
User avatar
MiniMax
Moderator
 
Posts: 5128
Joined: 2004-1-18 @ 04:15
Location: Stockholm, Sweden, Europe, Earth Interests: Old games & young women

Next

Return to DOSBox Games/Apps

Who is online

Users browsing this forum: No registered users and 1 guest