|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
General::General Discussion General discussion about EverQuest(tm), EQEMu, and related topics. Do not post support topics here. |
12-30-2013, 04:10 PM
|
Discordant
|
|
Join Date: Mar 2009
Location: eqbrowser.com
Posts: 309
|
|
Quote:
Originally Posted by drakelord
When you say hangup, do you mean you just haven't done it yet or are you having an active problem with it?
|
Both
Quote:
Originally Posted by drakelord
Edit: And the handshake issue, are you having a problem where you have to re-establish the tcp connection for every packet or something?
|
The handshake issue was that we had to re-authenticate every time a packet was sent.
Those problems are now solved and we have the packet sequence pretty much done (sending / receiving).
The networking will be released open-source just like everything else.
We basically took Derision's EQExtractor code and tweaked it for a networking scenario instead of a packet collection scenario. Uses naez's class for sending and derision's constructor to recieve the proto packet
|
|
|
|
12-30-2013, 04:53 PM
|
Fire Beetle
|
|
Join Date: Dec 2013
Posts: 3
|
|
My sending class was just a quick prototype of a UDP client (read: it's pretty shit). It will likely need read/write threads and processing in the main thread in a design pattern that is seen a lot in the server code, so that network I/O will not lag each frame. Actual packet managers will probably need to inherit from this generic UDP client base class so that it can be reused for communications with the loginserver, worldserver and zoneserver (with a different virtual function for each, handling packet opcodes). It's got some utilities in it though that can translate C# structs into a raw byte buffer compatible with C, the Crypto API .dll symbol imports are working (though we still need embed it as a resource or something so it can be loaded by the web client), and I'm told Secrets has the CRC16/32 checksums working now too. Secrets is working on tying the infrastructure together.
It's still kind of a clusterfuck right now but once we get through to the breakthrough point of this network backend and can reliably commmunicate with the server, we should be able to rapidly make progress on a ton of features like tracking movement, attacking, commands like /who and /con etc, adding spawns/other players, and some of the more basic spells like heal and nuke.
|
|
|
|
12-31-2013, 10:07 AM
|
Hill Giant
|
|
Join Date: Nov 2002
Location: NC, USA
Posts: 182
|
|
I'm looking forward to this project simply because it'll make porting custom content easier. EQEmu is such a robust server solution in it's current form. It'd be nice to see it used for more diverse situations.
__________________
Hmm.
|
|
|
|
02-11-2014, 12:45 AM
|
Discordant
|
|
Join Date: Mar 2009
Location: eqbrowser.com
Posts: 309
|
|
Update:
Secrets has generously offered to create an open-source way for developers to create custom clients to connect to an Eqemu server.
I don't believe many will understand how legendary this will be for actual custom client control, but this is a big deal. Secrets will be going down in EQ history as the person that allows any developer to have complete client customization for EQ.
Naez has started with Unity Gameplay Mechanics in relation to the 450 op_codes on the Eqemu server.
For example, you feign death in the game, and the server knows your feign death.
Tyen/Salty is continuing asset implementation into the Unity Engine, starting with Ecommonlands.
Ecommons object XML (rotation, scale, location) into Unity. (this)
Requiem is "thrashing" the server code and also making it more customizable in-game by putting "things" in the database.
Example; having a database editor in-game with additional options such as waypoints and spawns to customize your server.
|
|
|
|
02-11-2014, 07:52 AM
|
|
Demi-God
|
|
Join Date: May 2007
Location: b
Posts: 1,447
|
|
Let me make it clear Salty: As long as you are wanting to attack Project 1999 and EQEmulator servers, you are considered too mentally unstable to assist in any projects.
If anything is done by myself, it will be open sourced so you could benefit from it. I am not 'working' for you, I am working for everyone.
|
02-11-2014, 11:23 AM
|
Demi-God
|
|
Join Date: Jan 2002
Posts: 1,290
|
|
__________________
www.eq2emu.com
EQ2Emu Developer
Former EQEMu Developer / GuildWars / Zek Seasons Servers
Member of the "I hate devn00b" club.
|
02-11-2014, 12:15 PM
|
Discordant
|
|
Join Date: Mar 2009
Location: eqbrowser.com
Posts: 309
|
|
Quote:
Originally Posted by Secrets
If anything is done by myself, it will be open sourced so you could benefit from it. I am not 'working' for you, I am working for everyone.
|
Exactly how I stated it in my post, and I appreciate your continued contribution towards Open-Source EQ development.
|
02-12-2014, 05:30 PM
|
Discordant
|
|
Join Date: Mar 2009
Location: eqbrowser.com
Posts: 309
|
|
Quote:
Originally Posted by Secrets
you are considered too mentally unstable to assist in any projects.
|
I'll bite.
You may feel I'm "unstable" because I like to demonstrate server-related problems, but the EQEMU code-base is becoming more stable due to what the EQBrowser team found and the information I have provided EQEMU developers. Everyone who has played any Emu server knows things don't get done unless you generate attention.
I have yet to see any asset extraction tool (besides the one we created) that is able to do Models, Animations, Textures, Mats, & XML rot/scale/loc all at once.
I am assisting & contributing openly in custom client development, and have made huge strides, are you?
|
02-12-2014, 05:40 PM
|
Demi-God
|
|
Join Date: Apr 2008
Location: MA
Posts: 1,164
|
|
How to correctly report crash bugs with opcodes: Make a post with which opcodes can be used and how. If you want to provide a proof of concept crash plugin, send the source to one of the devs. If you want to include a tiny snippet, I personally have no problem, but some of the other devs might not.
How not to report crash bugs: Provide a compiled plugin in a public forum without source and not mention which opcodes cause problems.
Note: I like open disclosure on these things, but making it extremely easy for anyone to just grab the plugin and cause havoc is the wrong way to go about it. Calling devs names is also not a good thing. The thing is, more of the problems you've guys found were fixed because of the attacks you performed on servers, not you reporting them responsibly.
|
02-12-2014, 05:48 PM
|
Discordant
|
|
Join Date: Mar 2009
Location: eqbrowser.com
Posts: 309
|
|
Quote:
Originally Posted by demonstar55
Make a post with which opcodes can be used and how. If you want to provide a proof of concept crash plugin, send the source to one of the devs. If you want to include a tiny snippet, I personally have no problem, but some of the other devs might not.
|
I have done what you described, yet the information is hidden from the public, as is anything that could make the project more stable for anyone starting a server.
It's basically the main problem with EQEMU "open-source development."
You want to gather anyone who has the time and expertise, yet keep it hidden from anyone who could contribute.
It's like a frat or sorority. Only the "cool" kids run the stable code, while everyone else is left in the dark.
|
02-12-2014, 05:53 PM
|
Discordant
|
|
Join Date: Mar 2009
Location: eqbrowser.com
Posts: 309
|
|
I'm a dickhead because garnering attention is the only way to get things done around here. I'm ok with being the bad guy.
Quote:
Originally Posted by Secrets
If anything is done by myself, it will be open sourced so you could benefit from it. I am not 'working' for you, I am working for everyone.
|
This is the real story, and what is going to jump-start custom client development.
I don't care who likes or dislikes me, but THIS is important for the development community.
|
02-12-2014, 06:00 PM
|
Demi-God
|
|
Join Date: Apr 2008
Location: MA
Posts: 1,164
|
|
If you're talking about the post you made yesterday, that would fall under doing it wrong.
Repeatedly crashing clients on P99 is also doing it wrong.
How you should of reported it since you seem to be completely incapable of understanding:
Quote:
The opcodes OP_Emote and OP_GMSearchCorpse can be forged with MQ2 sending a non null-terminated payload that causes zone and client crashes.
|
That provides enough details so a dev can fix it, it also gives one details to build a plugin to cause problems for servers, but that's okay, we need to fix those things. The dev looking at the problem shouldn't have to open up your plugin in IDA to see what you're doing to cause crashes :P
|
02-12-2014, 06:03 PM
|
Discordant
|
|
Join Date: Mar 2009
Location: eqbrowser.com
Posts: 309
|
|
It's deeper than that. Every instance of strlen() is sploitable.
Also in terms of r99/p99, Rogean and I don't exactly have open lines of communication.
He makes it to where I can't communicate with him, so I have to show him.
Quote:
Originally Posted by demonstar55
Calling devs names is also not a good thing
|
Have not and will not.
|
02-12-2014, 06:11 PM
|
Demi-God
|
|
Join Date: Apr 2008
Location: MA
Posts: 1,164
|
|
Quote:
Originally Posted by Tyen05
Have not and will not.
|
You called me names :P
|
02-12-2014, 06:13 PM
|
Discordant
|
|
Join Date: Mar 2009
Location: eqbrowser.com
Posts: 309
|
|
Quote:
Originally Posted by demonstar55
You called me names :P
|
I would only call you a pal for contributing posts in my thread, whether in agreement or disagreement.
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 05:27 PM.
|
|
|
|
|
|
|
|
|
|
|
|
|