Author | Message | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Open source client, anyone?
| This is just a first pass, but I thought I'd share what I have while it's at least working a little bit ;) Client is written in C#. Requires installation of XNA Game Framework (development studio or whatever). Runs in Visual Studio 2013 (I don't know about express edition). Take a look at this site to download XNA if you don't have it already: https://msxna.codeplex.com/releases/view/117230 Source is available here: https://github.com/ethanmoffat/EndlessClient UPDATE: binary is available here: https://github.com/ethanmoffat/EndlessClient/blob/master/Release.zip (built 8/8/2014 at 17:32 PST) UPDATE 2: the binary will try to connect to 127.0.0.1:8078, so you'll need a local instance of eoserv running in order to try it out (or just build the source...its not hard...) UPDATE 3 (8/15/14): Haven't had much time on this lately, but gameplay development is in-progress, and I added support for a reading a config.ini. The main 11 buttons (well, 10 that actually worked in the original client) transition between different UI panels and show updated content based on which one was clicked. Only loads the background images for those so far. Will upload source/binaries for new version when I get on my other computer, a screenshot is included for now. [Intermediate update] (9/25/14): Added some basic chat handling. Doesn't actually handle in-game chat yet but it is close. The framework is all there. As a sample the news from the server (kinda) works. Like I said..."intermediate"... UPDATE 4 (9/28/14): Chat rendering is working like a champ. As a demo, the news text file that is loaded from the server and sent to the client on login is rendering properly and scrolling properly-er. The scrollbar has been pretty buggy in the past but is working well now. UPDATE 5 (10/4/14): Public and Private chat seem to be working. I have a few more features to add to those two and adding handling for other types of chat won't be too hard. This will be my last update on this post (see linked github for changelists and code updates). ChangeList Version 2.1 (9/25/2014):
Version 2 (8/8/2014):
Screenshot of the in-game screen so far: (UPDATE: more screenshots available in this album here!) (original) Screenshot of my client (sorry Apollo, using your GFX/pubs for testing :-/): And the original client looks like this: --- class EOSERV { Programmer | Oldbie Open source EO Client: https://github.com/ethanmoffat/EndlessClient };
|
Re: Open source client, anyone?
| It looks so well made. I hope it gets completed. o3o
|
Re: Open source client, anyone?
| i can't find a compiled executable file but it looks nice. --- Remember when is not an organization nor a fucking group , it's simply an idea that we believe in and live for. The priority of Remember when should come before oxygen , as oxygen is cosmetic even life itself is cosmetic,that's why offer our worthless lives to The "Remember when"
|
Re: Open source client, anyone?
| Alright, you plebs. OP updated with link to binaries. You'll need to copy gfx/pubs over still. --- class EOSERV { Programmer | Oldbie Open source EO Client: https://github.com/ethanmoffat/EndlessClient };
|
Re: Open source client, anyone?
| doesn't work even after copying my gfx/pub over. --- Remember when is not an organization nor a fucking group , it's simply an idea that we believe in and live for. The priority of Remember when should come before oxygen , as oxygen is cosmetic even life itself is cosmetic,that's why offer our worthless lives to The "Remember when"
|
Re: Open source client, anyone?
| weedindeed posted: (1st Aug 2014, 11:50 pm) Well, you're the one who wanted a compiled binary... It's looking for a server running on localhost. If you want it to work, start a local instance of eoserv running on the same computer listening on port 8078. Or, change the code to point to a different server and rebuild it, since the entire point of this project is to do exactly that. Adding support for a config.ini is not mission critical to me at the moment. --- class EOSERV { Programmer | Oldbie Open source EO Client: https://github.com/ethanmoffat/EndlessClient };
|
Re: Open source client, anyone?
| I can't open the game itself. --- Remember when is not an organization nor a fucking group , it's simply an idea that we believe in and live for. The priority of Remember when should come before oxygen , as oxygen is cosmetic even life itself is cosmetic,that's why offer our worthless lives to The "Remember when"
|
Re: Open source client, anyone?
| weedindeed posted: (2nd Aug 2014, 10:26 pm) I'm guessing it's missing a DLL dependency then? I can't really help much when your problem is either "doesn't work" or "I can't open it". Help me to help you. Be descriptive. Use your words. Assuming it's a missing DLL dependency, make sure .NET (at least v4.0) and XNA are installed like I described (at least the XNA runtime needs to be there). XNAControls.dll and EOLib.dll also need to be wherever the game is extracted. If it's not, it could be Windows firewall is being a toolbag, so make sure you have a port exception for port 8078 on your computer. --- class EOSERV { Programmer | Oldbie Open source EO Client: https://github.com/ethanmoffat/EndlessClient };
|
Re: Open source client, anyone?
| got the Microsoft XNA Framework Redistributable 4.0 and it worked. --- Remember when is not an organization nor a fucking group , it's simply an idea that we believe in and live for. The priority of Remember when should come before oxygen , as oxygen is cosmetic even life itself is cosmetic,that's why offer our worthless lives to The "Remember when"
|
Re: Open source client, anyone?
| weedindeed posted: (5th Aug 2014, 10:19 am) Interesting - keyboard input should be working for creating accounts. I haven't tested that in a while so I probably changed something that borked it. I'll definitely look into that, glad everything else is working though! XNA supports resizing/maximizing the window. The 'Game' class that is the base of everything has a handle to the game's underlying window (Win32 HWND) so I can always just go in through WinForms and change stuff using that handle if I need to, since I'm not planning on an Xbox or Windows Phone port at all :P I'm planning to enable stretching the window once the player is in-game and try to make it so that the client shows more of the map instead of scaling all the graphics. Might be kind of challenging but it would look much better than images stretched up from 640x480. Old pub files format is just a little version check I added. I had another topic on here about rendering hair, and the way I solved that problem was to add new item sub-types to the pub files. I used a previously unused byte as a "version" number in the file, so it checks this when the game loads. The version number is updated when the pubs are processed by the BatchPub utility that I include in the source. You might notice hair showing through on characters wearing hoods or helmets otherwise! --- class EOSERV { Programmer | Oldbie Open source EO Client: https://github.com/ethanmoffat/EndlessClient };
|
Re: Open source client, anyone?
| There is something else I found in the client ,the boxes are not moving right not the correct way as eo ,nvm about it probably it's not important . edit:sometimes the text of the "could not find server" box appears in the top left side for a sec ,before the box appears. --- Remember when is not an organization nor a fucking group , it's simply an idea that we believe in and live for. The priority of Remember when should come before oxygen , as oxygen is cosmetic even life itself is cosmetic,that's why offer our worthless lives to The "Remember when"
|
Re: Open source client, anyone?
| weedindeed posted: (5th Aug 2014, 07:17 pm) That second one I'm actually working on right now, it's been a problem for a looong while. What's the first one you're talking about? Which boxes aren't moving right? --- class EOSERV { Programmer | Oldbie Open source EO Client: https://github.com/ethanmoffat/EndlessClient };
|
Re: Open source client, anyone?
| perhaps it's the most unimportant thing in the world,but the message boxes like the one that shows when the connection fails or the one with the text that shows when your creating a new account,when you move these boxes to the edge of the window and then try to move them again they won't move in a correct way..... --- Remember when is not an organization nor a fucking group , it's simply an idea that we believe in and live for. The priority of Remember when should come before oxygen , as oxygen is cosmetic even life itself is cosmetic,that's why offer our worthless lives to The "Remember when"
|
Re: Open source client, anyone?
| Looks promising... how long have you been working on this?
|
Re: Open source client, anyone?
| weedindeed posted: (6th Aug 2014, 10:19 pm) The dialogs should all be fixed now. I've been trying to fix that problem with the words popping up in the top left for a while now (I haven't updated the binary but the source is fixed). Also it should no longer be possible to drag them off screen.
Septharoth posted: (7th Aug 2014, 02:27 pm) This all started because like 4 years ago I tried loading GFX in C# using P/Invoke and it didn't work (I had no idea what I was doing). I revisited the problem in April and got it almost immediately, so I just kind of went with it. I developed the UI controls (buttons, dialogs, etc) as part of my senior project at school. Development on the actual client itself took off mid July. I haven't had as much time on it as I would like recently because I started working but I've been adding little bits and pieces here and there so hopefully I'll be able to complete it! --- class EOSERV { Programmer | Oldbie Open source EO Client: https://github.com/ethanmoffat/EndlessClient }; |