Neo-EE
- Omega
- Administrator
- Posts: 1807
- Joined: Fri Nov 07, 2008 3:56 pm
- Lobby Username: [-Ts-] Ωmega
- Location: Washington, DC / USA
- Contact:
Neo-EE
The project to try and get the old servers back up and running. Led by Jodocus_ with contributions from RealForce.
See: http://www.neoee.net/
Essentially a proper re-do of what this thread turned into: viewtopic.php?f=12&p=36135#p36135 (has previous information on the project)
See: http://www.neoee.net/
Essentially a proper re-do of what this thread turned into: viewtopic.php?f=12&p=36135#p36135 (has previous information on the project)
-
- NeoEE Developer
- Posts: 50
- Joined: Tue Apr 23, 2013 6:16 am
- Lobby Username: RealForce
-
- Senior Member
- Posts: 201
- Joined: Tue Feb 16, 2010 11:41 am
- Lobby Username: Die Gurke
Re: Neo-EE
Hm sth strange: If i hit the link posted by RealForce
But when i manually enter the adress "neoee.net ", i come to an updated version of the site with information bout 2nd TestDay.
Just wanted to report in case other people having this issues too, they dont miss test day
i come to the old site, where when you hit TestDay, theres nothing bout 2nd TestDay.
But when i manually enter the adress "neoee.net ", i come to an updated version of the site with information bout 2nd TestDay.
Just wanted to report in case other people having this issues too, they dont miss test day
[22:23:06] [-Ts-] Tricky: i dont even know what my name is anymore
-
- Senior Member
- Posts: 224
- Joined: Thu Feb 16, 2012 7:47 pm
- Lobby Username: BigRon
Re: Neo-EE
I'm coming home!
- Jodocus_
- Intermediate Member
- Posts: 76
- Joined: Thu Sep 20, 2012 1:37 pm
- Lobby Username: Jodocus
Re: Neo-EE
Thanks to all testers of NST2!
In total, I could find 5 Bugs. Three of them were crashes that I could instantly fix and the other 2 bugs will remain for my further work. I think in about 3 weeks we will do another test (with an even more stable server). I hope that I can also add some new features until this day. Maybe inviting, kicking, muting and banning from games.
For all that could not join the Test Day, here is a screen shot:
In total, I could find 5 Bugs. Three of them were crashes that I could instantly fix and the other 2 bugs will remain for my further work. I think in about 3 weeks we will do another test (with an even more stable server). I hope that I can also add some new features until this day. Maybe inviting, kicking, muting and banning from games.
For all that could not join the Test Day, here is a screen shot:
- Jodocus_
- Intermediate Member
- Posts: 76
- Joined: Thu Sep 20, 2012 1:37 pm
- Lobby Username: Jodocus
Re: Neo-EE
I have some interesting news for you:
TL; DR I found a way to enable everyone to be a game host in NeoEE (just like in GameRanger), even those who don't have the 1337 skills or the rights to open and forward ports in their router gateways!
------
This is how it works: User A and B join together in a VPN network (RealForce and me used Hamachi). Imagine user A wants to be the host but he can not forward the ports. Now, A starts some special patch software from me (in fact, it is a part of the NeoEE Titan Server!) and then he connects to the lobby. If he now hosts a game, all members of the VPN network will be able to join his room and start the game. However, those who did not joined the VPN network won't be able to join rooms of those people that created a game while using my special tool. The tool is, speaking simplified, "binding" your hosted games to the VPN network and not to the "raw internet".
Apparently, this has some obvious cons: everyone must be inside the additional VPN network to be able to join both games hosted by "normal" hosts that forwarded their ports and by VPN hosts, no matter if yourself can directly host or not.
If you cannot host, you additionally must run my tool in order to "bind" your games to the VPN network.
Of course there are ways to simplify it, but doing so will exceed by far my capabilities (for a One-Man-Project): Create an own VPN software, put it into a DLL and low-level patch some original Empire Earth DLLs (like TCP Protocol.dll or others) in that way that when the DLL is loaded, it will also load the VPN DLL to automatically join the NeoEE VPN network. Then you wouldn't need to install and start any external tools like Hamachi. You just "abuse" some Empire Earth DLLs as proxy DLL for your own and the VPN gets automatically started when you launch Empire Earth.
I cannot do this alone (additionally), so anyone that feels that he can help doing this (either implementing the VPN network or low-level patching DLLs) is hereby invited to apply here.
Consider that this would be a significant advantage over the old lobby.
TL; DR I found a way to enable everyone to be a game host in NeoEE (just like in GameRanger), even those who don't have the 1337 skills or the rights to open and forward ports in their router gateways!
------
This is how it works: User A and B join together in a VPN network (RealForce and me used Hamachi). Imagine user A wants to be the host but he can not forward the ports. Now, A starts some special patch software from me (in fact, it is a part of the NeoEE Titan Server!) and then he connects to the lobby. If he now hosts a game, all members of the VPN network will be able to join his room and start the game. However, those who did not joined the VPN network won't be able to join rooms of those people that created a game while using my special tool. The tool is, speaking simplified, "binding" your hosted games to the VPN network and not to the "raw internet".
Apparently, this has some obvious cons: everyone must be inside the additional VPN network to be able to join both games hosted by "normal" hosts that forwarded their ports and by VPN hosts, no matter if yourself can directly host or not.
If you cannot host, you additionally must run my tool in order to "bind" your games to the VPN network.
Of course there are ways to simplify it, but doing so will exceed by far my capabilities (for a One-Man-Project): Create an own VPN software, put it into a DLL and low-level patch some original Empire Earth DLLs (like TCP Protocol.dll or others) in that way that when the DLL is loaded, it will also load the VPN DLL to automatically join the NeoEE VPN network. Then you wouldn't need to install and start any external tools like Hamachi. You just "abuse" some Empire Earth DLLs as proxy DLL for your own and the VPN gets automatically started when you launch Empire Earth.
I cannot do this alone (additionally), so anyone that feels that he can help doing this (either implementing the VPN network or low-level patching DLLs) is hereby invited to apply here.
Consider that this would be a significant advantage over the old lobby.
- Jodocus_
- Intermediate Member
- Posts: 76
- Joined: Thu Sep 20, 2012 1:37 pm
- Lobby Username: Jodocus
Re: Neo-EE
Alternatively, we may implement a system I called NPS instead of a VPN network.
Look the image below: this system doen't require anyone to join a VPN network at all. If you are behind a NAT firewall and cannot host, you will install a firewall server on your computer. As soon as you started it and connect to the lobby, you will be able to host. The joiners don't have to do anything. For them, everything keeps the same!
Easily spoken: "EnableHostingForMe.exe".
The Firewall Server will together with the proxy server emulate the direct connection between player and host. It is slower than direct connection of course, but if ping time keeps under 600ms, there will be no lag in Empire Earth.
Black Arrows mean "Connect". When you are inside a NAT behind a firewall, you can connect to anywhere, but nobody can actively connect to you. Not to confuse with sending and receiving data, that works in both directions.
Red Arrows mean "Sending data on an open connection".
Green Arrow means the actual Empire Earth game traffic: those packets that are sent during the game.
Imagine the possibilities on this: You can even in-game kick a lagger using this technique. I will experiment on this within the next weeks, but it looks quite promising.
If you feel like that you could help, apply!
Look the image below: this system doen't require anyone to join a VPN network at all. If you are behind a NAT firewall and cannot host, you will install a firewall server on your computer. As soon as you started it and connect to the lobby, you will be able to host. The joiners don't have to do anything. For them, everything keeps the same!
Easily spoken: "EnableHostingForMe.exe".
The Firewall Server will together with the proxy server emulate the direct connection between player and host. It is slower than direct connection of course, but if ping time keeps under 600ms, there will be no lag in Empire Earth.
Black Arrows mean "Connect". When you are inside a NAT behind a firewall, you can connect to anywhere, but nobody can actively connect to you. Not to confuse with sending and receiving data, that works in both directions.
Red Arrows mean "Sending data on an open connection".
Green Arrow means the actual Empire Earth game traffic: those packets that are sent during the game.
Imagine the possibilities on this: You can even in-game kick a lagger using this technique. I will experiment on this within the next weeks, but it looks quite promising.
If you feel like that you could help, apply!
-
- Global Moderator
- Posts: 1101
- Joined: Sun Apr 12, 2009 11:23 am
- Lobby Username: >Heros<=Captain Nemo*
Re: Neo-EE
Sounds brilliant tbh, if u can make it work. Then u would have a "product" that should be able to dominate GR's EE, with the right advertising mouth-to-mouth style.
bosshaft: "A warm pussy is so much better than a dick! Trust me."
- Jodocus_
- Intermediate Member
- Posts: 76
- Joined: Thu Sep 20, 2012 1:37 pm
- Lobby Username: Jodocus
Re: Neo-EE
The friend list is done, it finally works now!
I am glad to announce that we are almost done. Only Banning and Mute is missing, then the server has all features implemented! Next week will be NST3 with friend list working, I hope it is the last stability test and the server won't crash any more. From today on, I can say with 100% certainty: NeoEE will work!
I am glad to announce that we are almost done. Only Banning and Mute is missing, then the server has all features implemented! Next week will be NST3 with friend list working, I hope it is the last stability test and the server won't crash any more. From today on, I can say with 100% certainty: NeoEE will work!
-
- Senior Member
- Posts: 201
- Joined: Tue Feb 16, 2010 11:41 am
- Lobby Username: Die Gurke
-
- Global Moderator
- Posts: 1101
- Joined: Sun Apr 12, 2009 11:23 am
- Lobby Username: >Heros<=Captain Nemo*
- Ghost
- Administrator
- Posts: 1894
- Joined: Fri Nov 07, 2008 12:25 am
- Lobby Username: [-Ts-] Ghost
- Location: San Francisco, CA, USA
Re: Neo-EE
You could get around the port forwarding by having everyone run a program that redirects the traffic through a different port that isn't commonly firewalled by routers. In theory you would use a packet sniffer to grab raw incoming packets from port X (unfirewalled) and then retransmit them to yourself, locally, to port Y (firewalled from outside, so won't block local retransmission). The same would be true for outgoing packets. The only delay would be how fast the program could grab and retransmit the packets, once for the host and once for the client.
Obviously there's other problems from certain use cases that need to be considered during implementation but this wouldn't require a central server or a VPN tunnel.
Obviously there's other problems from certain use cases that need to be considered during implementation but this wouldn't require a central server or a VPN tunnel.
"Nothing is foolproof to a sufficiently talented fool."
-•¤Lazy Bone¤•-: we had to double ghost or we had no chance
•§ITHLORD§•(surfer): artylery give no many domage on aa mobile since 3 day
-•¤Lazy Bone¤•-: we had to double ghost or we had no chance
•§ITHLORD§•(surfer): artylery give no many domage on aa mobile since 3 day
- Jodocus_
- Intermediate Member
- Posts: 76
- Joined: Thu Sep 20, 2012 1:37 pm
- Lobby Username: Jodocus
Re: Neo-EE
>> You could get around the port forwarding by having everyone run a program that redirects the traffic through a different port that isn't commonly firewalled by routers.
That is what I don't like. I want as less as possible extra programs, or we can not compete with GameRanger. NPS only requires the host to run an extra program. Also, the lobby game list must work (in short: when you host a game, your IP gets published to all others, therefore I must proxy it if I do NPS, this is what the proxy server in NPS does).
>> In theory you would use a packet sniffer to grab raw incoming packets from port X (unfirewalled) and then retransmit them to yourself, locally, to port Y (firewalled from outside, so won't block local retransmission). The same would be true for outgoing packets.
Yeah, this is how NPS then will work: Client A <----- Proxy Server ----> Firewall Server <-----> Client B (Host). Only the communication between Proxy and Firewall Server and Client A and Proxy server goes through different computers in different subnets.
>> The only delay would be how fast the program could grab and retransmit the packets, once for the host and once for the client.
I can program really high performant software, the program speed won't be actually the problem. The problem is the network latency. If we chose to put the server into europe, a ping from North America may take 150ms, a ping from South America maybe 200ms. Since Ping = time for echo going out and coming back, the ping of 2 players playing in America via NPS may be around 300 - 400 (in worst case, I hope). Some tests showed that EE will start to stop the game and show those slugs at 600ms latency. So there is a chance to try.
>> Obviously there's other problems from certain use cases that need to be considered during implementation but this wouldn't require a central server or a VPN tunnel.
Our tests with Hamachi + Lobby worked fine and fast (since Hamachi will create a true Peer to Peer connection). Problem is that everyone would have to run Hamachi (also guys that just want to join) and the host requires still to run a little extra tool. That's why I dont like it.
That is what I don't like. I want as less as possible extra programs, or we can not compete with GameRanger. NPS only requires the host to run an extra program. Also, the lobby game list must work (in short: when you host a game, your IP gets published to all others, therefore I must proxy it if I do NPS, this is what the proxy server in NPS does).
>> In theory you would use a packet sniffer to grab raw incoming packets from port X (unfirewalled) and then retransmit them to yourself, locally, to port Y (firewalled from outside, so won't block local retransmission). The same would be true for outgoing packets.
Yeah, this is how NPS then will work: Client A <----- Proxy Server ----> Firewall Server <-----> Client B (Host). Only the communication between Proxy and Firewall Server and Client A and Proxy server goes through different computers in different subnets.
>> The only delay would be how fast the program could grab and retransmit the packets, once for the host and once for the client.
I can program really high performant software, the program speed won't be actually the problem. The problem is the network latency. If we chose to put the server into europe, a ping from North America may take 150ms, a ping from South America maybe 200ms. Since Ping = time for echo going out and coming back, the ping of 2 players playing in America via NPS may be around 300 - 400 (in worst case, I hope). Some tests showed that EE will start to stop the game and show those slugs at 600ms latency. So there is a chance to try.
>> Obviously there's other problems from certain use cases that need to be considered during implementation but this wouldn't require a central server or a VPN tunnel.
Our tests with Hamachi + Lobby worked fine and fast (since Hamachi will create a true Peer to Peer connection). Problem is that everyone would have to run Hamachi (also guys that just want to join) and the host requires still to run a little extra tool. That's why I dont like it.
- Jodocus_
- Intermediate Member
- Posts: 76
- Joined: Thu Sep 20, 2012 1:37 pm
- Lobby Username: Jodocus
Re: Neo-EE
Okay guys, I hope you all noticed that on next Wednesday there will be NST3!
Depending on the amount of crashes during this test I will decide if we must do a NST4 or not. In NST3, you are able to do almost everything: chatting, friends, ignoring, blocking, inviting, asking for joining, muting, kicking, banning and all stuff you can imagine on the old lobby. However, changing your password or retrieving lost passwords won't work in NST3. Also, you won't get auto-muted if you spam in chat (yet). This all will come later.
Have a look at http://www.neoee.net for more information.
Depending on the amount of crashes during this test I will decide if we must do a NST4 or not. In NST3, you are able to do almost everything: chatting, friends, ignoring, blocking, inviting, asking for joining, muting, kicking, banning and all stuff you can imagine on the old lobby. However, changing your password or retrieving lost passwords won't work in NST3. Also, you won't get auto-muted if you spam in chat (yet). This all will come later.
Have a look at http://www.neoee.net for more information.
-
- Senior Member
- Posts: 201
- Joined: Tue Feb 16, 2010 11:41 am
- Lobby Username: Die Gurke
Re: Neo-EE
Servers up and running!!! Works fine for everyone until now! We just had some nice full games (was pre but w/e) Keep spreading the word !
P.S.: Awesome job jodocus and RealForce, thanks to Pandu aswell! We look forward to NPS and the final start of NeoEE!
P.S.: Awesome job jodocus and RealForce, thanks to Pandu aswell! We look forward to NPS and the final start of NeoEE!
[22:23:06] [-Ts-] Tricky: i dont even know what my name is anymore
Who is online
Users browsing this forum: No registered users and 2 guests