Jump to content

Myg

Global Moderator
  • Posts

    495
  • Joined

  • Last visited

Everything posted by Myg

  1. [REMOVED] PLEASE REMOVE THREAD, THANK YOU
  2. DONE! :-) I decided to take a different approach and follow the scent of the "Generating timing packet" string after following the buffer from my attempts to port hifi's "thipx32" to VC++. HOW TO ENABLE THE SMOOTHING NETCODE FOR LAN: I was pleasently suprised to find that simply changing: Location 004912CD cmp bl, 2 to cmp bl, 0 enabled the auto-detection scheme built in for LAN. Me and Tore did a few tests and there seemed to be no sign of desync and it ran a heck of alot smoother! The change was confirmed by running C&C95 in DEBUG mode. GAME.LOG output "C&C95 - Changing MaxAhead to 6 frames C&C95 - Generating timing packet - MaxAhead = 6 frames" To do this, for those who don't know, make a shortcut to C&C95 and add "DEBUG" to the end of the target with a space before it.
  3. The following are my research notes on the topic of enabling the RA style netcode in C&C95. UPDATE: The following is only for adjusting the wchat level of netcode, to enable the LAN netcode, look at my post below. --------------------------------------------------- loc_47B313: - maxAhead (0047B35A) Change the edx assignment to the number of frames you want the eventengine to skip ahead (to provide a buffer) loc_455241: - EnableSendRate (00455247) Change the EnableSendRate to 2 to activate the netcode [C6 05 CA 05 54 00 02](7 bytes) is needed so, noop the xor above OR REPLACE WITH [b7 02] (if your using 1.06 exe) - SendRate (00455252) Change the sendRate to apply a divisor to the packets per second (1=~32 per second, 5=5 per second) --------------------------------------------------- *note* If you enable the sendrate, the maxahead will adapt based on the ping of the clients to eachother. I have noted that Red alert's settings add 3 to the maxahead compared to C&C95. Thanks to Nyerguds for his assistance, Pichorra for his persistance and Tore for his patience.
  4. Yes, I was contemplating this the other day when I heard about it. Theoretically it may be possible to make the game aware of a set of players in which to add to the list of users in the hosted game; Since it still uses the same detection technique as used in the LAN lobby. Nyerguds you did say to me that you could add a list of IP addresses, but the problem is we dont know if it contains the proper behaviour to iterate through a list since it is made to use only one. Obviously im assuming alot; but if you think its possible it may be worth a proper test!
  5. Aha! Hifi, nice work; seems you beat me to it! I wasnt able to complete my client and you have a browser based version up! Wow :-) Me and cheese tested and found some stuff worth looking into: 1. This error appears when you *Don't* enter the LAN lobby first when you press "start game" (on the web page) and then go back into the main menu to get it to start connecting. It isnt fixed/effected by - Compat mode - cncddraw - Previous versions of the exe It is fixed/effected by - Scorpio9's LAN dll (note: doesn't transmit thought - no traffic sent) What is possibly breaking it? - cncnet dll code used by the Internet mode (maybe socket creation?) - Improper writing of INI file
  6. There is no need to "rebalance" any of the games to be honest, if anything; change the way you play. If you dont like tank spam, use tons of walls and teslas/turrets. Its like the Reaper rush when SC2 first came out, people whined and complained till it was changed; but during that time I nullified it for my own purposes by walling off the sides of my mineral collection area with supply depos and changing the waypoint for my barracks to my command centre. Simple problems; simple fixes.
  7. Checked out MSDN, according to them; its replacing the addr struct with a new larger structure for the IPv6 and when you are writing new or updating old (with source) they suggest to add another socket to the system to provide IPv4 + IPv6 simultaneous functionality. So it seems it is as "trivial" as Irony says, my only concern is that of the internals of the game actually sorting the IP Address somewhere outside of its native struct (which would require some hacking to the likes of Nyerguds)
  8. Hi divinity; its nice to see some interest in the source of the project, but your on your own when it comes to things like that since we enjoy a level of unity through having a single server, it means its easier to find games and friends to play for everyone, inside and outside of the community! If you have some code which you could add to the project that might improve the system, we would be more then glad to try it out on our own service. Otherwise, like I said; your on your own :-)
  9. About a year ago I brought this topic up with a few people. It is something worth keeping in mind. It shouldn't be too hard (in my opinion and theory) to fix up C&C95 or other games since the ipv6 addressing protocol uses a similar struct for storing the endpoint/info. Concerning cncnet itself, since we have greater access and control of the system since hifi reprogrammed the dlls we should be in a position to deal with it when the time comes.
  10. The following is an example of the info required to send to a running C&C95 instance to initiate a pre-configured game in "internet mode". This is what Wchat.exe sends C&C95 when the game has started. *NOTE: There is a byte[] header that consists of the following - IT WILL NOT WORK WITHOUT IT* { int32, int32 } - First int is length in little endian. Second is just zero. [internet] Address=192.168.0.1 Port=8054 Host=0 GameID=0 StartTime=0 HWND=0 [Options] Handle=TestClient Color=5 Side=0 Credits=5000 Bases=1 Tiberium=1 Crates=1 AI=0 CaptureTheFlag=0 BuildLevel=7 UnitCount=1 Seed=1 Scenario=1 [Timing] MaxAhead=15 SendRate=5 Additional notes: - GameID Is auto-generated (can be anything) - StartTime Unix, since the epoc; system call - HWND Used to return the focus to the wchat client after ending session - Host can be either set to 0 or 1 (boolean) - Port can be any port (the client uses this for sending/receiving) - MaxAhead is the maximum frames the eventengine can run ahead - SendRate is the number of event packets sent per second from this client
  11. Its about time for a new official map pack from this community for cncnet! Grimson's work is very good and I am so glad to see such quality coming out of this place. I suggest we pick up all the best maps from netrunners pack and the ones lying around the forums, bring them together with grimson's work and release it as "The" Cncnet map pack (download provided in the cncnet section as well).
  12. Well, they definetly wont be as harsh as they "used" to be because of the removal of the .net raw socket usage (which is slower compared to the native winsock stuff). There is still plenty room for improvement, like if it were possible to change the timing/etc values for the LAN mode through an ini file/etc or hardcoding it to emulate the settings used in the "Internet mode" (used in wwchat). Most Lag issues would be a thing of the past.
  13. BTW: Can we get a version with the ORIGINAL music, and not the unlocked/Added stuff? It really doesnt match the game well.
  14. Are you going to update the full installer as well?
  15. Myg

    CnCNet Error w/ C&C95

    Hey guys, when you load up C&C95 with cncnet.exe it forgets to set the compatibility... You will need to set it manually to 95/98 for the moment.
  16. Meh, what a conversation; didn't expect it here. Let them stir their own pot of hatred and self-pity, its no concern of ours until they come to our doors with guns. Relax and enjoy life in confidence knowing that their own ignorance is their own eventual destruction.
  17. Hey Tore, use this link as a temporary replacement (I have plenty of limit left) http://freeraider.net/public/TSinstaller.exe
  18. Myg

    1.06c Suggestions

    - Fix the LAN net-code settings to the level of the internet mode net code settings. I said I will look into the pre-requesites; but I am not as good as looking into the code as you are: so maybe it would be much easier for you.
  19. Myg

    RA1 Online not working

    6-7 mates? Are you all on a LAN or at your own homes?
  20. Raptor, I was the one who originally implemented the Linux functionality. My apologies for discontinuing it. It used to work by simply staying in the forum chat room, which fed your connection information to the other client's discovery routine. The downside was that it allowed hosting only/no joining, but no other programs were needed other then C&C95,wine and a web browser. I hope in future that it is reimplemented, or that the foundation of functionality that it laid down may be reused again in cncNet.
  21. Tore, I made the change in the updating system that you requested. Can you confirm that it works? Thanks.
  22. Myg

    CnCNet redesign Proposal

    This post was mainly for irony, but since you asked nyer: - Before, it broadcasted to all clients to find games. This was feesable with the original expected player number (6-10) at most, but since it easily listed 30 or so clients we found out that routers in their great wisdom, dont like having more then a certain number of inbound expecting IP:port mappings, so when user numbers went up, it caused mayhem on the system, thus nullifying the technique. This is proposing that it broadcasts inside each users's machine, and not to other clients when searching for games. - Joining a game would (possibly) consist of a user manually connecting to a server in order to see games, instead of the open list of games we had previously. This would allow greater control for hosts. Pros: 1. It would reduce the overhead of the server hosting. 2. It would reduce errors/etc with router port mapping limits. 3. It would allow limiting players that can join games. 4. It would reduce overhead for the client. Cons: 1. Require a bit of creative server reworking 2. Requires an extra port to be mapped (for the tcp)
  23. Myg

    Sync Error

    Please read the following: http://www.cnc-comm.com/community/index.php?topic=528.0
  24. For the few of you who use this particular setup; here is how to forward the port. 1. Go to the Main PC which is providing the Internet Connection Sharing. 2. Go to Control Panel > Network / Network Connections. 3. Select the Connection which corresponds to the Modem. 4. Right click and select properties. 5. Follow the visual instructions below. 6. The dialog will ask which IP address it is going to forward it to. If you dont know how to find that; click on the start menu -> Run -> type in "cmd" -> Ok -> Type in "ipconfig" -> Enter Button -> IP Address is what your looking for
×
×
  • Create New...