Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Development

Development::Development Forum for development topics and for those interested in EQEMu development. (Not a support forum)

Reply
 
Thread Tools Display Modes
  #1  
Old 09-23-2012, 01:22 PM
EvoZak
Sarnak
 
Join Date: May 2008
Location: Midwest
Posts: 72
Default C# port... gauging interest

So I have ported some of the server code over to C# on .net 3.5. It's been a couple of years since I seriously worked on it and don't mind hosting it on GitHub if there is development interest. I want to start working on it again and would like to have some collaborators.

By "some" I mean I have a working UDP server, zoning, inventory management, combat, and lots of other items. It's been awhile but I think I have spells working somewhat. This is a line by line port I did by hand from the C++ source over hundreds of hours. I didn't use any converters so a lot of the class design has changed to meet my tastes, etc.

It is a super fun project that I learned a ton on. Really fun tackling various issues and porting them over. Major respect to the people that originally figured out how they were aligning ints into x bits in those structs.

My original goal was to learn and to see if the .NET framework was a verifiable choice for server programming. It is and has managed code benefits. There's a ton left to do. If there is interest I will provide more details. I don't want to have an epic post in a crickets thead
Reply With Quote
  #2  
Old 09-23-2012, 03:58 PM
Caryatis2
Banned
 
Join Date: May 2009
Location: earth
Posts: 13
Default

I don't think the benefits of managed code outweigh the hassles of a split project. I also don't think there is a large untapped base of .NET programmers in this community so in reality it would probably be a very small team trying to keep pace with the main project while most server ops just compile the C++ code and go.

Not to mention, linux ops needing to use mono. Don't see it catching on.
Reply With Quote
  #3  
Old 10-04-2012, 09:31 PM
EvoZak
Sarnak
 
Join Date: May 2008
Location: Midwest
Posts: 72
Default

So mostly crickets. That's cool. Still a fun project. Almost as interesting as watching the community run cool servers and implement the various features.
Reply With Quote
  #4  
Old 10-24-2012, 07:23 PM
ankhamunn
Fire Beetle
 
Join Date: Jul 2010
Posts: 5
Default

First time poster / long time lurker. To be honest I've been reading the forums lately thinking that jumping into a client dev project would be a great experience. If you're still around and the offer is still open - I'd love to chat briefly about what you've done. I'm graduating with a degree in CS this December but most of my experience is with Java/Python and a handful of trivial coursework in C/MIPS. Point being - I know my CS stuff but would like to jump into C++/C#/.Net work with a larger project.
Reply With Quote
  #5  
Old 10-24-2012, 09:40 PM
Caryatis
Dragon
 
Join Date: May 2009
Location: Milky Way
Posts: 539
Default

client != server
Reply With Quote
  #6  
Old 10-25-2012, 12:00 PM
ankhamunn
Fire Beetle
 
Join Date: Jul 2010
Posts: 5
Default

Ah totally read what I wanted to read. I've been thinking about doing a C# client to interact with the server. Pardon me
Reply With Quote
  #7  
Old 10-29-2012, 10:31 PM
EvoZak
Sarnak
 
Join Date: May 2008
Location: Midwest
Posts: 72
Default

Honest enough mistake Ankh, no worries. Keep looking in some of the other threads. I've seen one or two client projects get talked about quite a bit.
Reply With Quote
  #8  
Old 12-11-2012, 07:52 PM
Speedz's Avatar
Speedz
Hill Giant
 
Join Date: Oct 2004
Location: Ocean Park, WA
Posts: 186
Default

Most of what I do in learning to code and making new projects is in C#.
I would very much like to see this.
IMO I don't think it needs to "compete" for devs from the main C++
But if a few people that do code on C# want to play around I think having a good start on the option to do so is great.

I would like to have a look at the source if you still have it available.
__________________
Just another face in the crowd..
Reply With Quote
  #9  
Old 01-09-2013, 04:39 PM
addingice
Sarnak
 
Join Date: Jan 2013
Location: United States
Posts: 33
Default

Frankly, I would much rather see a Go version then a c# version.

It's designed for servers, it's the exact niche it was designed for, deployment is insanely simple for both windows and linux (and mac) once you understand the methodology (it's the same for all Go rather than different per platform, but it is slightly unique compared to other languages) and it's wonderful to deploy with scripts and patching/updates.

i've been kicking that idea around for a while, especially since I could use native interop to reuse whole swaths of the current code as I slowly migrate it over.

Sadly the main reason I've considered it is not because I love Go so much and the benefits would be so awesome (I would always hate to split teams up or even potentially draw effort away from this), but just because I want to avoid svn and move to git/github =-P

I'm so spoiled with my DVC systems. I love small clean patches with almost no effort to jump into another project.
Reply With Quote
  #10  
Old 01-09-2013, 04:49 PM
addingice
Sarnak
 
Join Date: Jan 2013
Location: United States
Posts: 33
Default

Oh, and the compile times. Go is so damn fast to compile it's insane. nothing like 'change one line, compile. change one line, compile, etc etc etc'.
Reply With Quote
  #11  
Old 03-19-2013, 09:03 AM
daerath
Sarnak
 
Join Date: Jan 2011
Location: Northern VA
Posts: 91
Default

Quote:
Originally Posted by EvoZak View Post
So I have ported some of the server code over to C# on .net 3.5. It's been a couple of years since I seriously worked on it and don't mind hosting it on GitHub if there is development interest. I want to start working on it again and would like to have some collaborators.

By "some" I mean I have a working UDP server, zoning, inventory management, combat, and lots of other items. It's been awhile but I think I have spells working somewhat. This is a line by line port I did by hand from the C++ source over hundreds of hours. I didn't use any converters so a lot of the class design has changed to meet my tastes, etc.

It is a super fun project that I learned a ton on. Really fun tackling various issues and porting them over. Major respect to the people that originally figured out how they were aligning ints into x bits in those structs.

My original goal was to learn and to see if the .NET framework was a verifiable choice for server programming. It is and has managed code benefits. There's a ton left to do. If there is interest I will provide more details. I don't want to have an epic post in a crickets thead

Sounds interesting. I've entertained the idea of writing parts of the emu in c#. While it would be exclusively a windows port, there are a number of advantages to using .NET over native code. At a minimum its a neat project and could produce some interesting benchmarks.

Did you / Can you post what you have so far on github?
Reply With Quote
  #12  
Old 05-02-2013, 10:21 PM
EvoZak
Sarnak
 
Join Date: May 2008
Location: Midwest
Posts: 72
Default

Sorry for the gap in responses. A well placed PM fired an email and alerted me... The result: https://github.com/jasoncoding/EqEmulator-net

Be advised that compared to the C++ project it's a wee infant, but it's still fun and a neat start. I probably have several hundred hours logged on what's there now. I'll be adding better overviews to the code, sample data and a short to do list I had going soon.
Reply With Quote
  #13  
Old 05-03-2013, 04:23 AM
Shawn319
Demi-God
 
Join Date: Jan 2002
Posts: 2,073
Default

I'd be interested in looking at the C# port.. although i'm just getting back into the C++ version and getting the clients setup myself.. but definitely will be downloading and taking a peek.
__________________
Shawn319
Semi-Retired EQ Addict

(Retired)EQEmu Lead Tester
(Retired)EQEmu Tech Support

(Retired)Host/ServerOP - [LIVE] Official EQEmu Test Server
(Retired)Host/ServerOP - Shawn319's All-GM Dev Test Server
(Retired)ServerOP - EQEmu Beta Server
(Retired)ServerOP - GuildWars Server
(Retired)ServerOP - Raid Addicts
--------------------------
Reply With Quote
  #14  
Old 05-07-2013, 01:24 PM
squevis667
Fire Beetle
 
Join Date: Dec 2010
Posts: 18
Default

Knock the dust off this bad boy. I would love to get a look at what you have done.
Reply With Quote
  #15  
Old 05-07-2013, 05:56 PM
Vexyl
Hill Giant
 
Join Date: Oct 2009
Location: U.S.A.
Posts: 197
Default

Quote:
Originally Posted by squevis667 View Post
Knock the dust off this bad boy. I would love to get a look at what you have done.
The github link was already posted:
https://github.com/jasoncoding/EqEmulator-net
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 12:46 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3