Official Community Forums
 
HomeHome  FAQFAQ  SearchSearch  MemberlistMemberlist  UsergroupsUsergroups  RegisterRegister  Log in  The Wiki  Website  github Project  

Share | 
 

 Some Questions about the Platform, Client and Development Focus

View previous topic View next topic Go down 
AuthorMessage
stef_k
Newbie
Newbie
avatar

Posts : 5
Join date : 2013-05-31
Location : Greece

PostSubject: Some Questions about the Platform, Client and Development Focus   Sun 2 Jun - 11:05

Hello all,

My name is Stefanos (Stef for short), a full time worker and a part time student near the end of a CS degree with interest in game development (mostly server side) but without any experience.

First of all i would like to thank all community's members for the efforts to keep alive Multiverse. Second please bare with me for the lengthy post and questions but before the questions i also would like to state that Multiverse as open source project, is a very good resource for inexperienced people (mostly programmers) about game server architecture.

To the questions...

1. Are there any experienced developers (considering Multiverse) among the community? I picked that as a first question because i think some of the following questions may require technical knowledge (sorry if sounds little rude Sad ). Also it would be good to know who to chase for answers Very Happy .

2. I searched the wiki about .mvw file specification but didn't find anything. I would like to know how such map files can be generated, say if i need to develop a new tool or integrate with a tool like Unity3d.

3. Following the previous (2) question, how the world server handles object positions. Is it authoritative or relies to clients about player's position (X,Z and Y)? Does it uses some kind of prediction system?

4. Again following the previous (2 & 3) questions, how the server(s) read such files? I mean that if the server tells the client where everything must be in the world, how the server knows the world, X, Z and altitude of objects in relation to maps?

5. This is about the client (World browser). I have successfully deployed a master server and the rest of the servers into a server box i own and am trying to login to the sample world. From the logs and the client i can tell that the login process is successful but while the client loads throws exceptions about invalid assets? It complains about Invalid assets repository. So i cannot log into the world in order to confirm that i have a stable development environment.

6. Has anyone managed to setup server code to Netbeans (and how) since i would like to avoid Eclipse if possible.

7. Any tips about building client side and tools with VS 2012 would be helpful. I've tried without investing much time but bumped into many dependency errors.

8. Are there any plans considering the development, that is ideas, issues, roadmap and designs? I would like to participate in the development process (have tiny experience with Java from University modules, currently doing small projects in Python, have done some C# - WinForms - Entity Framework programming and shell scripting).

9. Are there any plans moving the client toolset to other platforms like Panda3D or Unity3D? Panda3D is natively cross-platform so as Unity3D. Also there is much hype around Unity and this means many resources such as community, code, assets, etc. It would be a major step but considering the pros it may be worth it. For example Unity has been proved to be easy but high quality tool currently running on Windows and Mac which can deploy to Browsers, Windows, Mac and Linux. It has ready made editor, probably the only major things for start should be a networking interface to talk to MV server and a toolset to export to the correct formats.

Panda3D provides simplicity (Python on top of C++ engine), cross-platform development and deployment. Major drawback is the lack of a map-scene editor which with some effort could be made.

In both cases i would like to help.

As for my current setup, the server(Ubuntu 12.04 LTS server 64 bit) uses Java1.7. I tried to run the client with no succes as mentioned in my questions with Windows 7 32 bit and Windows 7 64 bit (had to install Dx9 2010) in order to run.

Sorry for the long post and language (English is not my native language), any answer - knowledge is welcomed and much appreciated!

Heads up for the community and the project, a major resource and opportunity to learn about networked games technology.

Regards, Stef.
Back to top Go down
http://iccode.net
Delurin
Head of Platform Development


Posts : 424
Join date : 2011-08-03

PostSubject: Re: Some Questions about the Platform, Client and Development Focus   Sun 2 Jun - 15:19

1) I am pretty experienced
2) the mvw file does not contain the map it only refers to either the seed for a random map or the .mmf file that is a mosaic of heightmap texture files (grey scale)
3) The server will override the position of the client but the client sends updates with some prediction that the player will move along the last vector at the speed last given until either a new update message arrives or a change in direction message is given or change in speed.
4) The server reads in the .mvw (which are just xml files) and parses the object positions and stores the object in quad trees. The server does not currently do any physics calculations - a problem some people have raised in terms of clients being able to hack and run through objects. It shouldnt be impossible to implement a change but currently it does not do physics nor does it read the heightmaps so it does not really track the altitudes instead sending how high the object should be from the terrain and whether it should follow the terrain and the client calculates the correct height.
5) You need to have an asset server that distributes the assets or you can run the model viewer once from the client computer and select a default repository ad add --noupdate to the command line to run the client.
6) I have not tried to setup netbeans I haven't had a problem with Eclipse and it seems to be used a lot in open source software.
7) Again sorry I have not updated to vs 2012 I am still using 2010 it seemed like 2012 was more focused on web/mobile development and I kind of gave up after downloading it. I might try to take another look at it. But I hate working through all the little changes they make that break things.
8/9) There are not any real set plans that I know of for development. I know I am currently trying to fix some memory problems that occur after playing for more than 30 minutes. If you want to help with that I wouldnt mind some help. I also have worked on updating to the latest version of Axiom3D (the underlying rendering client) but there was a weird rendering problem that I could not solve so I have put it on hold. I dont have any experience with Panda3D but from everything I have experienced networking in c++ is a royal pain in the ass. Unity at least can be extended with Mono and I have done some preliminary work on interfacing with the multiverse server but more as a curiosity than anything.

Also I could not tell that you were a non-native English speaker. So no need to apologize.
Back to top Go down
stef_k
Newbie
Newbie
avatar

Posts : 5
Join date : 2013-05-31
Location : Greece

PostSubject: Re: Some Questions about the Platform, Client and Development Focus   Sun 2 Jun - 18:11

Hi,

Thank you for your quick reply!

Regarding the client:

I haven't set the update/patch methods on server so i tried to run the client using "--no_client_update --w sampleworld --log_level 0 --master SERVER_IP --noupdate" and before this i designated assets repository with model viewer.

The first complain was about "MultiverseImageset.png", could not find it and threw an exception. I pasted the file directly to executable's directory as temporary solution.

Now hangs while trying to load the cursor, bellow is the related log entry:

Code:
WARN  [2013-06-02 12:16:10,912] UiSystem            Invalid imageset: Cursor
ERROR [2013-06-02 12:16:10,912] Exception            Object reference not set to an instance of an object.
ERROR [2013-06-02 12:16:10,913] Exception            Exiting client due to exception: System.NullReferenceException: Object reference not set to an instance of an object.
  at Multiverse.Gui.GuiSystem.UpdateCursorProperties()
  at Multiverse.Gui.GuiSystem.set_CurrentCursor(Window value)
  at Multiverse.Interface.UiSystem.RestoreCursor()
  at Multiverse.Interface.UiSystem.SetCursor(Int32 priority, String texture)
  at Multiverse.Base.MarsWorld.Initialize()
  at Multiverse.Base.Client.Setup()
  at Multiverse.Base.Client.Start()
  at Multiverse.MultiverseClient.Main(String[] args)

Meanwhile i'll try to build the solution with VS while reading the code in the hope to understand the loading problems.

Thanks again!
Regards,
Back to top Go down
http://iccode.net
Delurin
Head of Platform Development


Posts : 424
Join date : 2011-08-03

PostSubject: Re: Some Questions about the Platform, Client and Development Focus   Mon 3 Jun - 6:12

If you are using the standard client installer it has to connect to an update server once I believe the original installer is not up to date...If you build from source that is not a problem. I believe the MutliverseImageset,png should be in your repository file. If you havent created a repository for your game you will need to also use the --use_default_repository flag or I believe you can use --development which I believe is both the --noupdate and --use_default_repository
Back to top Go down
stef_k
Newbie
Newbie
avatar

Posts : 5
Join date : 2013-05-31
Location : Greece

PostSubject: Re: Some Questions about the Platform, Client and Development Focus   Mon 3 Jun - 8:52

That is correct, i used the client from the installer with the sampleworld from sourceforge; i din't made any customizations to assets since for the time being i just want to setup a stable environment. I will check again with the arguments you suggest and check with the assets from the update url.

I've also managed to build the client using VS 2012 without any problems while studying the code base. My main problem is that i didn't manage to debug it. It keeps asking for the devil.dll library. I can find devil but cannot figure out how to reference it as dependency within VS.

I've been thinking about trying to use the Network libraries with Unity as a start to see how far i can get. For starters to create a simple login screen and test if i can communicate successfully with the server. From my point of view Unity is a good choice if i manage to interface it with the servers. It could provide a complete development solution for creating content (level editor & world browser for testing, packaging project, etc), leaving more time to tweak server side features.
I could think here that the main problem would be the map (geodata) specs and how can be interfaced with world server. Any ideas would be welcomed of course.

Thanks for the reply.
Stef
Back to top Go down
http://iccode.net
Delurin
Head of Platform Development


Posts : 424
Join date : 2011-08-03

PostSubject: Re: Some Questions about the Platform, Client and Development Focus   Mon 3 Jun - 9:11

From what I saw the networking in unity will not work with the mv servers. They do more state synchronization which is not handled by mv and you probably would not want since that works for small scale multiplayer but not really for mmo style since there it does not care about perceivers.
Back to top Go down
stef_k
Newbie
Newbie
avatar

Posts : 5
Join date : 2013-05-31
Location : Greece

PostSubject: Re: Some Questions about the Platform, Client and Development Focus   Mon 3 Jun - 9:21

Yes i know, Unity's networking facilities cannot handle such kind of games. I was thinking to use MV networking libraries with any modifications which may be required.

Regards,
Stef
Back to top Go down
http://iccode.net
Delurin
Head of Platform Development


Posts : 424
Join date : 2011-08-03

PostSubject: Re: Some Questions about the Platform, Client and Development Focus   Mon 3 Jun - 9:34

Oh sorry I miss read that as you wanted to use Unity's networking with multiverse back end. They are pretty compatible thankfully the libraries required exist in Mono so it is mostly just modifying them so that they translate the positions/orientations to match Unity
Back to top Go down
stef_k
Newbie
Newbie
avatar

Posts : 5
Join date : 2013-05-31
Location : Greece

PostSubject: Re: Some Questions about the Platform, Client and Development Focus   Tue 4 Jun - 3:37

Well the problem with the client considering assets - repository related exceptions, proved to be an older(?) version of sampleworld. I'vs pointed the master server to htpp://update.multiversemmo[...] and updated the assets repo.

Now the client runs smoothly the world. Thanks for pointing to the right direction.
Back to top Go down
http://iccode.net
Sponsored content




PostSubject: Re: Some Questions about the Platform, Client and Development Focus   

Back to top Go down
 
Some Questions about the Platform, Client and Development Focus
View previous topic View next topic Back to top 
Page 1 of 1
 Similar topics
-
» Driver Hotswap to AI Questions
» Solved: log on netease servers with US client
» How to Downgrade your WOW Client !!!
» WoW "Development" Server
» New XM-25 in development

Permissions in this forum:You cannot reply to topics in this forum
 :: Development :: Getting Started-
Jump to: