DEVS: Are you interested in a brand-new client?

Forum for alternative clients, mods & discussions on the same.

Moderator: Phades

themendios
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

DEVS: Are you interested in a brand-new client?

Post by themendios »

Before I just run off and do it anyway (already dissecting the auth/server message parts), I thought why not just offer - I am willing (for free) to make a LGPL-licensed XNA client. This won't take me that long since I'm familiar with it (and C#) since I do it for a living, and the game itself is simple enough (at least the client part).

Things an XNA client could offer:
Real 3D, or at least an easily manipulated 2.5D environment.
Much cleaner code.
Much improved efficiency, Java graphics always have my laptop fans running overtime despite the implied relatively low overhead.
Easily pluggable resources, although the current Java has this too.
Easily ported to XBOX (for whatever that's worth).
Also portable to Android phones (for whatever that's worth).

Things XNA cannot offer(at the moment):
Linux support (although I hear mono is trying, they're way behind on everything else though).
Direct web play (JNLP would still have to cover that).

All I would want:
Detailed explanation of server handshake, and server messages, and any details I need to parse on the client side, or at least a detailed explanation of what's going on in the Java, which I am capable of reading/coding.

That's all I need, honestly. I can and am already reverse-engineering those 2 things but I'm offering it publicly now on the off chance that you want it. I think the game itself is great, the client is obviously incremental code and even the coder admits he hates Java (although what he prefers I don't know). XNA would give the client a new fresh start, this game would barely scratch its capabilities so it would be perfect to expand on.

XNA is a Microsoft platform designed for portability between XBOX/PC/Android but it's rapidly replacing DirectX as the focus of their managed code graphics API. It has no licensing restrictions, just has an XNA redist that would be packaged along with it like DirectX.

What do you think?

My email is my username at gmail if you prefer that route.
Last edited by themendios on Thu Feb 10, 2011 5:46 am, edited 1 time in total.
User avatar
FatBob
Posts: 642
Joined: Fri Jun 25, 2010 3:26 am

Re: DEVS: Are you interested in a brand-new client?

Post by FatBob »

HnH already go in 3D soon ;)
I mean a new game called Salem
cgbnab wrote:Last time I died I got a few seconds to stare at my corpse and watch NaoWhut call me a "bosha".
User avatar
sabinati
Posts: 15527
Joined: Mon Jul 13, 2009 4:25 am
Location: View active topics

Re: DEVS: Are you interested in a brand-new client?

Post by sabinati »

does it run on linux? :lol:

also the client is open source so go hog wild
themendios
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

Re: DEVS: Are you interested in a brand-new client?

Post by themendios »

FatBob wrote:HnH already go in 3D soon ;)
I mean a new game called Salem
What is the deal with that? I see it in sigs and mentioned as an in-joke? Lost Chronicles: Salem?
sabinati wrote:does it run on linux? :lol:

also the client is open source so go hog wild
Yea but you've got to understand I'm talking about a completely different language/platform from scratch. I'm not sure how they feel about it since the only 'different' clients than the standard codebase is just very minorly modified original client.

I literally just pulled the server authentication out and was about to start the SSL section and I realized the devs might not appreciate me reverse engineering the server authentication part for a brand new client if they aren't expecting it.
User avatar
loftar
Posts: 9096
Joined: Fri Apr 03, 2009 7:05 am
Location: Your character database

Re: DEVS: Are you interested in a brand-new client?

Post by loftar »

I certainly wouldn't mind people writing a new client from scratch. I'm also not the slightest wedded to the current client, so if it really turns out to be better than the current client in ways that I can appreciate I might very well replace it. I don't mind helping out with protocol details either; just ask away. However, you may want to note that some of the resources contain dynamically loaded Java code which links to the current client's API, which makes it hard to replace satisfactorily.

Also, I don't see what mad advantages this new client would have to make me touch anything written in C♯ (especially seeing how I'd have to install Windows just to run it). Java may be bad, but there are degrees even in hell. :)
"Object-oriented design is the roman numerals of computing." -- Rob Pike
themendios
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

Re: DEVS: Are you interested in a brand-new client?

Post by themendios »

loftar wrote:I certainly wouldn't mind people writing a new client from scratch. I'm also not the slightest wedded to the current client, so if it really turns out to be better than the current client in ways that I can appreciate I might very well replace it. I don't mind helping out with protocol details either; just ask away. However, you may want to note that some of the resources contain dynamically loaded Java code which links to the current client's API, which makes it hard to replace satisfactorily.

Also, I don't see what mad advantages this new client would have to make me touch anything written in C♯ (especially seeing how I'd have to install Windows just to run it). Java may be bad, but there are degrees even in hell. :)
Well honestly the major advantage is that you're working with a premade game API so a lot of stuff for 2.5d/3d is already there and you don't have to code for it.

Java was your second choice to what? JOGL is horribly inefficient on Windows my laptop is burning a hole in my leg playing this and I can run Crysis mods on it without it breaking a sweat.

And ask where? Here?

Question about the Message class - is it sending the ToString() or where is the actual stuff it sends to the server? It looks like this is an SSL TCP connection sending plaintext UTF-8 messages (possibly with MESSAGE(xxx)) but I am not 100% certain.

Question about server auth - what is the address it is actually hitting with SSL? I can't find it anywhere.
User avatar
loftar
Posts: 9096
Joined: Fri Apr 03, 2009 7:05 am
Location: Your character database

Re: DEVS: Are you interested in a brand-new client?

Post by loftar »

themendios wrote:Java was your second choice to what? JOGL is horribly inefficient on Windows my laptop is burning a hole in my leg playing this and I can run Crysis mods on it without it breaking a sweat.
Java was my first choice solely on the merits of Java Web Start. In terms of language alone, I would have preferred almost anything, but I guess performance-realistic alternatives would have included C or Lisp.

It isn't actually JOGL that's inefficient, however, but rather my using it for drawing pure 2D graphics, it seems. The Salem (3D) client runs much, much better.
themendios wrote:Question about the Message class - is it sending the ToString() or where is the actual stuff it sends to the server? It looks like this is an SSL TCP connection sending plaintext UTF-8 messages (possibly with MESSAGE(xxx)) but I am not 100% certain.
I'm not sure what you're asking. The Message class merely encapsulates a message; it does no network interaction by itself at all. Its purpose is merely to do binary encoding/decoding. You will note that it is the "sendmsg" function in the AuthClient class that actually sends the contents of Messages over the network. And the protocol is not plaintext, by the way.
themendios wrote:Question about server auth - what is the address it is actually hitting with SSL? I can't find it anywhere.
Unless the client has been explicitly configured otherwise, the authentication server address is the same as the game server.
themendios wrote:Well honestly the major advantage is that you're working with a premade game API so a lot of stuff for 2.5d/3d is already there and you don't have to code for it.
To be honest, I usually find that such libraries cause more work than they relieve. :) I almost always have to code around them to either fix bugs in them, or make them do things they weren't designed to handle and what not. For such reasons, I usually tend to use as few third-party libraries as absolutely possible.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
burgingham
Posts: 8486
Joined: Fri Aug 14, 2009 10:58 pm

Re: DEVS: Are you interested in a brand-new client?

Post by burgingham »

loftar wrote:'m also not the slightest wedded to the current client, so if it really turns out to be better than the current client in ways that I can appreciate I might very well replace it.
Does that mean if someone built a decent client without any abuses like light hack, but lets say just with better resolution you would be willing to use it as the standard client?
User avatar
loftar
Posts: 9096
Joined: Fri Apr 03, 2009 7:05 am
Location: Your character database

Re: DEVS: Are you interested in a brand-new client?

Post by loftar »

burgingham wrote:Does that mean if someone built a decent client without any abuses like light hack, but lets say just with better resolution you would be willing to use it as the standard client?
Well, as for the current clients with increased resolution, it's not so much the presence of light hacks that I mind, but the way they've implemented it. A real implementation would need much better server-side support, so their UI code is just hacked.

The Salem client (and server) has real support for changing resolution, so I'd like to backport it at some point. (It actually builds on work that I begun for Haven anyway to make the UI much more client-side and therefore generally moddable in other ways as well.)
"Object-oriented design is the roman numerals of computing." -- Rob Pike
themendios
Posts: 49
Joined: Mon Feb 07, 2011 6:32 pm

Re: DEVS: Are you interested in a brand-new client?

Post by themendios »

loftar wrote: The Salem (3D) client runs much, much better.
Damn I just looked that up - published by Paradox too, which means I have to buy 5 copies on principle alone. So what is going to happen with this IP?

EDIT: And I normally agree with you on the 3rd party libraries, I'm a ISO C89 kind of guy. But the only exception to that is GUI work, its sooo much work to code it from scratch.

Return to “The Wizards' Tower”