Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

  • (2 Pages)
  • +
  • 1
  • 2

19 Replies - 37923 Views - Last Post: 18 March 2013 - 12:20 PM

#1 BnMcG  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 8
  • Joined: 17-March 13

Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 03:15 AM

Hi guys,

I'm building a completely open-source 2D RPG engine - the engine also will have/has support for multiplayer gaming, too. The whole thing is being built from the ground-up in Java, meaning that it will be totally cross-platform (the whole 'write once, run anywhere' ethic, hopefully! )

I'm hoping to differentiate it from other RPG engines by making it completely open source, and writing the code as clean as possible - this way any one with some programming experience will be able to dive in and edit the engine to their liking. However, I also want to build tools into it that allow more 'traditional' editing, like an inbuilt map-editor, etcetera.

Currently I have the very basis of a server and client written - the client is able to connect to the server and send/receive data - see the screenshots below for reference - I'm very near (hopefully :P/> ) having support for multiple players on-line in the same map. Obviously, player can already walk around within the confines of the map.

I'd like to know if anybody is interested in helping with development of the engine, whether this be website-wise (I'm happy to setup a dedicated domain and hosting for the project), graphics-wise (this would be really helpful, my art skills are terrible!), programming-wise, or simply suggesting ideas.

I'm hoping with some input we can really make this stand out from the crowd of 2D RPG engines - by means of great creative ideas, impressive 2D graphics and clean coding.

Screenshot(s) of progress (apologies for my slap-dash grass background, I was just making sure it worked :P/>):

Posted Image

Posted Image

Posted Image

(I'll post more images when I'm allowed to add more URLS ) However, you can see that it connects to the server, and then asks for a list of connected players.

Thanks for your interest, and hopefully we can get a really good project running here. I'll be posting the source code on GitHub today or tomorrow.

Thanks,
BnMcG.

Is This A Good Question/Topic? 0
  • +

Replies To: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

#2 baavgai  Icon User is offline

  • Dreaming Coder
  • member icon

Reputation: 5881
  • View blog
  • Posts: 12,758
  • Joined: 16-October 07

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 04:01 AM

Why post the annoucment before the code link?

Figure out at least how to embed images properly.

Also, it's not a great name. I'm sure it scans fine in French, but in English it makes me think of a dude eating a bagel.
Was This Post Helpful? 0
  • +
  • -

#3 BnMcG  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 8
  • Joined: 17-March 13

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 04:08 AM

Unfortunately, after posting I wasn't able to edit the post - I did realise it had been done wrong!

The code is here on GitHub, however I didn't want to 'publish' a version that was months old, and I didn't want to push my latest version, which has a few critical bugs.

Thanks,
Ben.
Was This Post Helpful? 0
  • +
  • -

#4 BnMcG  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 8
  • Joined: 17-March 13

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 04:15 AM

GitHub repository updated - however the code is rough and not completely commented yet.
Was This Post Helpful? 0
  • +
  • -

#5 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 1
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 06:35 AM

The code organization in the repository is poorly organized (folder levels too deep and when you do get to a folder it's not descriptive sufficiently of its content).

When you release a project as open source you must have:

1. Good organization.
2. Good documentation.
3. A nailed design for the project, in this case a game design. A 2D RPG is asking for trouble without direction like any other project.
4. The project must be sizable and worthy of investing time in. This project is simple and doesn't need to be open source.
Was This Post Helpful? 0
  • +
  • -

#6 baavgai  Icon User is offline

  • Dreaming Coder
  • member icon

Reputation: 5881
  • View blog
  • Posts: 12,758
  • Joined: 16-October 07

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 07:31 AM

What's with the fugly underscores on the methods? Why aren't you consistent about it? You could at least run a javadoc against the thing.

Example game?

Ant script? Makefile? Netbeans or Eclipse build? At least a jar?

The bin directory doesn't make much sense.

I'm not trying to be harsh. It's just, posting your code on git hub is bascially droping your pants in public. You should be ready for it.

I would add that the src depth is fine. That's just how Java likes to organize it's packages. That's at least standard.
Was This Post Helpful? 0
  • +
  • -

#7 BnMcG  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 8
  • Joined: 17-March 13

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 08:06 AM

View PostButchDean, on 17 March 2013 - 06:35 AM, said:

A nailed design for the project, in this case a game design. A 2D RPG is asking for trouble without direction like any other project.


The project doesn't have much 'focus' as it's intended to be an engine for building a (multiplayer) RPG game upon, rather than being an RPG itself. If I had to name a focus, I'd put it on ease-of-use and (eventually!) a pleasing graphics set.

View PostButchDean, on 17 March 2013 - 06:35 AM, said:

The project must be sizable and worthy of investing time in. This project is simple and doesn't need to be open source.


While I agree that the project isn't substantial at the moment, it's in its very early stages of development, and I hope it will expand and become something more sizeable and substantial as development progresses.


View Postbaavgai, on 17 March 2013 - 07:31 AM, said:

What's with the fugly underscores on the methods? Why aren't you consistent about it? You could at least run a javadoc against the thing.


I picked the underscores up from some scripting language (possibly ActionScript?) that I used to use. I agree it's messy how they're not consistent, and I'll drop them in my next push.

View Postbaavgai, on 17 March 2013 - 07:31 AM, said:

Example game? Ant script? Makefile? Netbeans or Eclipse build? At least a jar? The bin directory doesn't make much sense.


It's a bit early in development for an example game, but I will try and build one in as I go along! I'll sort out the bin directory and add a jar to my next push, too.

View Postbaavgai, on 17 March 2013 - 07:31 AM, said:

I'm not trying to be harsh. It's just, posting your code on git hub is bascially droping your pants in public. You should be ready for it.


I agree completely, and your feedback is really helpful for improving my coding in general (I'm a student) - I'm really grateful for it!

Cheers,
Ben.
Was This Post Helpful? 0
  • +
  • -

#8 anonymous26  Icon User is offline

  • D.I.C Lover

Reputation: 1
  • View blog
  • Posts: 3,638
  • Joined: 26-November 10

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 08:11 AM

View Postbaavgai, on 17 March 2013 - 11:31 AM, said:

I would add that the src depth is fine. That's just how Java likes to organize it's packages. That's at least standard.

Fair enough, I'm not a java guru. I still say that if the path is standard then the whole path should not be included in the repository, since it can be placed in the right position in the directory tree by the contributor/developer.
Was This Post Helpful? 0
  • +
  • -

#9 modi123_1  Icon User is online

  • Suitor #2
  • member icon



Reputation: 9379
  • View blog
  • Posts: 35,225
  • Joined: 12-June 08

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 08:11 AM

hmmm.. a lack of pull requests makes it hard to track what's going on in an overview-ish sort of way. I'll hold off digging into it until later.
Was This Post Helpful? 0
  • +
  • -

#10 BnMcG  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 8
  • Joined: 17-March 13

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 08:31 AM

View PostButchDean, on 17 March 2013 - 08:11 AM, said:

Fair enough, I'm not a java guru. I still say that if the path is standard then the whole path should not be included in the repository, since it can be placed in the right position in the directory tree by the contributor/developer.


Do you think I should skip the src/com/bm/jeu/ and just put in the 'main' folder of the program?

Cheers.
Was This Post Helpful? 0
  • +
  • -

#11 baavgai  Icon User is offline

  • Dreaming Coder
  • member icon

Reputation: 5881
  • View blog
  • Posts: 12,758
  • Joined: 16-October 07

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 09:08 AM

View Postmodi123_1, on 17 March 2013 - 10:11 AM, said:

hmmm.. a lack of pull requests makes it hard to track what's going on in an overview-ish sort of way.


???

Pull requests are issued by the forker. It's not up to the maintainer.

As a test, I just made one. :P

https://github.com/BnMcG/Jeu/pull/2

Github is fun.
Was This Post Helpful? 0
  • +
  • -

#12 modi123_1  Icon User is online

  • Suitor #2
  • member icon



Reputation: 9379
  • View blog
  • Posts: 35,225
  • Joined: 12-June 08

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 09:10 AM

Eh.. I typically see 'pull requests' as 'review' requests.. starting discussions on functionality and adding new stuff. I skim them to see what was being changed and why..
Was This Post Helpful? 0
  • +
  • -

#13 baavgai  Icon User is offline

  • Dreaming Coder
  • member icon

Reputation: 5881
  • View blog
  • Posts: 12,758
  • Joined: 16-October 07

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 09:16 AM

View PostBnMcG, on 17 March 2013 - 10:31 AM, said:

Do you think I should skip the src/com/bm/jeu/ and just put in the 'main' folder of the program?


No.

The point of the overly deep directory convetion is to allow flexibility of namespace. What if you want to add an example and it makes sense to have it in com.bm.rpgofdoom. Where do you put it? More importantly, what if I send you soemthing in net.baavgai.foo; where does it go?

You can flatten it out with src/com.bm.jeu but changes in the tree might make things messy. You decide later that, in your flat world, something now needs to go under something else and you're hosed. Stick to the Java convention for this one. It confuses first time viewers, but it does make sense.
Was This Post Helpful? 0
  • +
  • -

#14 baavgai  Icon User is offline

  • Dreaming Coder
  • member icon

Reputation: 5881
  • View blog
  • Posts: 12,758
  • Joined: 16-October 07

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 09:23 AM

View Postmodi123_1, on 17 March 2013 - 11:10 AM, said:

Eh.. I typically see 'pull requests' as 'review' requests.. starting discussions on functionality and adding new stuff. I skim them to see what was being changed and why..


Yep. It's a function of perspective. You fork a project. It's now your project. You make changes to your project. You want the owner of the project you forked to see your work and consider incorporating it into their master. You are making a pull request of them.

Unless you're part of the dev team, you're just an outsider forking with it. In a team, you'd just push changes to your branch and the project manager would review and see if they should be moved into the master branch. On a small team, you might just push to master yourself. The other devs would get the changes when they refresh (pull) from master.
Was This Post Helpful? 0
  • +
  • -

#15 BnMcG  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 8
  • Joined: 17-March 13

Re: Jeu - Open Source 2D (MMO)RPG Engine (Community Project)

Posted 17 March 2013 - 11:51 AM

Hi all,

I've pushed a new update to the GitHub repository for the Jeu client, acting on the feedback that you've all given.

I *think* I've generated an Ant build file - Eclipse has generated one, but to be honest I've not tested it and I'm still not sure what the purpose of Ant scripts really are. If somebody could explain, it'd be well-received :)/>

I've also run a JavaDoc against the client source code, and it's in the top level directory 'doc' - however I know that the JavaDoc comments in the source code itself are either incomplete or missing, so I'm going to work on that over time - however it's a start! I also added README files to each package folder explaining the purposes of each class inside that package.

I've also removed the underscores from some methods - the inconsistent style was bad.

The full README is on GitHub, but I think that just about covers it.

I'm not really sure how to clean up the bin folder properly, as Eclipse seems to generate the files in it on every build.

Please let me know if you have any further suggestions.

Cheers,
Ben.
Was This Post Helpful? 0
  • +
  • -

  • (2 Pages)
  • +
  • 1
  • 2