Java-Gaming.org Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (523)
Games in Android Showcase (127)
games submitted by our members
Games in WIP (592)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Ultima Online server in Java  (Read 5821 times)
0 Members and 1 Guest are viewing this topic.
Offline r_daneel_olivaw

Junior Newbie





« Posted 2011-02-10 10:48:50 »

Hello everybody,

I already posted a topic like this in another forum but I can't cross-link it because this is my first post Smiley sorry for the repetition - anyways, I'm not copy-pasting.

Thing is, I'd like to implement an Ultima Online server in Java, basically because:
- I'm a big UO fan,
- I love Java,
- I'm interested in building a new system from scratch, mainly because I work with Java EE and I don't have the chance to experiment the "whole stack" very often - from tcp/ip to the higher levels.

I already committed something on my sourceforge project, named 'juoserver' - again, can't cross-link it, but you can easily look it up - but (as written in the forum there), the project is at a very early stage, meaning you can barely choose a hard-coded server and a hard-coded character and then everything freezes-up (I managed to translate 12 packets on ~194 by now = ~6% Tongue).

Anyways, I'm now quite easily able to "read" what client and server are telling each other, by means of:
- wireshark, a tcpdump-like tool
- a utility script (already committed) to easily decompress server messages (client doesn't compress; server does, except from the pre-login phase)
- once you have the "real bytes" you can either look up the packet from docs available online or inspect runuo open source (C#)

Needless to say, I need help Cheesy so, if anyone loves UO as well, and is interested in a good ol' Java project where you can nerdly reverse-engineer a client-server protocol reading tcp/ip messages and inspecting an already functioning non-Java source, write here or send me an e-mail or post a message on the sourceforge forum Smiley

thank you for your attention and have a nice day!
Daneel

Daneel
Offline 8bitooze

Senior Newbie





« Reply #1 - Posted 2011-02-12 02:24:11 »

Hello everybody,

I already posted a topic like this in another forum but I can't cross-link it because this is my first post Smiley sorry for the repetition - anyways, I'm not copy-pasting.

Thing is, I'd like to implement an Ultima Online server in Java, basically because:
- I'm a big UO fan,
- I love Java,
- I'm interested in building a new system from scratch, mainly because I work with Java EE and I don't have the chance to experiment the "whole stack" very often - from tcp/ip to the higher levels.

I already committed something on my sourceforge project, named 'juoserver' - again, can't cross-link it, but you can easily look it up - but (as written in the forum there), the project is at a very early stage, meaning you can barely choose a hard-coded server and a hard-coded character and then everything freezes-up (I managed to translate 12 packets on ~194 by now = ~6% Tongue).

Anyways, I'm now quite easily able to "read" what client and server are telling each other, by means of:
- wireshark, a tcpdump-like tool
- a utility script (already committed) to easily decompress server messages (client doesn't compress; server does, except from the pre-login phase)
- once you have the "real bytes" you can either look up the packet from docs available online or inspect runuo open source (C#)

Needless to say, I need help Cheesy so, if anyone loves UO as well, and is interested in a good ol' Java project where you can nerdly reverse-engineer a client-server protocol reading tcp/ip messages and inspecting an already functioning non-Java source, write here or send me an e-mail or post a message on the sourceforge forum Smiley

thank you for your attention and have a nice day!
Daneel
Great idea, i can't wait to see this finished as this will most likely be the first cross-platform freeshard server in existence.

Sincerely,

8BitOoze

P.S. I stink at client/server java programming so I can't help you.

[size=3]8BitOoze[/size]
Offline ra4king

JGO Kernel


Medals: 355
Projects: 3
Exp: 5 years


I'm the King!


« Reply #2 - Posted 2011-02-12 06:07:33 »

This sounds quite interesting. I think I am safe to say that I am quite good at making a Java software server (since I have 4 running on my server for my games right now Tongue )
PM me for my email Smiley

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline r_daneel_olivaw

Junior Newbie





« Reply #3 - Posted 2011-02-12 09:40:02 »

Great idea, i can't wait to see this finished as this will most likely be the first cross-platform freeshard server in existence.

Sincerely,

8BitOoze

P.S. I stink at client/server java programming so I can't help you.

Thanks for the appreciation anyway Smiley

This sounds quite interesting. I think I am safe to say that I am quite good at making a Java software server (since I have 4 running on my server for my games right now Tongue )
PM me for my email Smiley

I'll PM you Cheesy

Daneel
Offline 8bitooze

Senior Newbie





« Reply #4 - Posted 2011-02-12 19:16:08 »

Quote
Quote
Great idea, i can't wait to see this finished as this will most likely be the first cross-platform freeshard server in existence.

Sincerely,

8BitOoze

P.S. I stink at client/server java programming so I can't help you.

Thanks for the appreciation anyway Smiley
You welcome, best of luck on your project and hope you do manage to finish it one day.

Sincerely,

8BitOoze

[size=3]8BitOoze[/size]
Offline Mike

« JGO Spiffy Duke »


Medals: 86
Projects: 1
Exp: 6 years


Java guru wanabee


« Reply #5 - Posted 2011-02-12 20:23:08 »

I remember playing UO 10-15 years ago, was a really nice game back then so I'm really curious about this project. I'm really busy finishing up my current game so I can release an alpha so I can't help out but keep us informed how it's going Smiley

Mike

My current game, Minecraft meets Farmville and goes online Smiley
State of Fortune | Discussion thread @ JGO
Offline r_daneel_olivaw

Junior Newbie





« Reply #6 - Posted 2011-02-13 11:54:22 »

Sure, I'll post any significant changes, thank you for the interest. Of course you're welcome anytime if you find yourself with some spare time to help out, but even also appreciation is very welcome :-) and good luck with your project, too!

Daneel
Offline r_daneel_olivaw

Junior Newbie





« Reply #7 - Posted 2011-05-01 16:24:02 »

I remember playing UO 10-15 years ago, was a really nice game back then so I'm really curious about this project. I'm really busy finishing up my current game so I can release an alpha so I can't help out but keep us informed how it's going Smiley

Mike

Just as an update, I managed to log in, walk and run in the server :-)

Everything is still VERY alpha: there's no persistence, it's single-client, all the data is fake, there are no items, doesn't yet read the map files.. well, let's say that you can walk & run rather than listing what you can't do :-P but still it's fun, and having been able to run in my own Java server it's definitely cool.

here's the site: http://juoserver.sourceforge.net/

Daneel
Offline Mike

« JGO Spiffy Duke »


Medals: 86
Projects: 1
Exp: 6 years


Java guru wanabee


« Reply #8 - Posted 2011-05-01 20:16:17 »

Nice! I opened this thread right away when I saw that there was a new post Smiley

Code looks good as far as I could see. Well done!

My current game, Minecraft meets Farmville and goes online Smiley
State of Fortune | Discussion thread @ JGO
Offline r_daneel_olivaw

Junior Newbie





« Reply #9 - Posted 2011-05-01 22:05:03 »

Thank you! I'll sure keep you informed about the progress Grin

Daneel
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline r_daneel_olivaw

Junior Newbie





« Reply #10 - Posted 2011-08-09 12:58:20 »

Another update: clients are now parallel (before this, only one client was managed) and they can SEE each other Cheesy unfortunately the progress is very slow, because I'm the only one working on the project, but the development itself is quite fun Wink

(of course the previous lack of feature still remains: fakeness, etc)

Well, stay tuned - I hope to be able to write soon with more features!

Daneel
Offline Mike

« JGO Spiffy Duke »


Medals: 86
Projects: 1
Exp: 6 years


Java guru wanabee


« Reply #11 - Posted 2011-08-09 21:32:57 »

Servers are indeed quite complex but they are a great way of learning as well, keep up the good work Smiley

Mike

My current game, Minecraft meets Farmville and goes online Smiley
State of Fortune | Discussion thread @ JGO
Offline r_daneel_olivaw

Junior Newbie





« Reply #12 - Posted 2011-11-13 18:09:06 »

For those who follow this project: characters are now able to speak to each other :-)

I have a fairly clear vision of the project's architecture, I only need time (other people's time is fine too of course Tongue).

The server is multi-threaded, each client runs in its own thread. Scripts do not exist yet, but will definitely run within the server's main thread, according to the active-object pattern (http://en.wikipedia.org/wiki/Active_object).

I updated the developer's site page with the project's objectives: http://juoserver.sourceforge.net/develop.html

Cheers,

Daneel
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

SHC (23 views)
2014-11-25 12:00:59

SHC (21 views)
2014-11-25 11:53:45

Norakomi (19 views)
2014-11-25 11:26:43

Gibbo3771 (22 views)
2014-11-24 19:59:16

trollwarrior1 (36 views)
2014-11-22 12:13:56

xFryIx (74 views)
2014-11-13 12:34:49

digdugdiggy (52 views)
2014-11-12 21:11:50

digdugdiggy (46 views)
2014-11-12 21:10:15

digdugdiggy (41 views)
2014-11-12 21:09:33

kovacsa (67 views)
2014-11-07 19:57:14
Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!