Comments (5)
In the future you will. For now it is not our next goal.
from dreamblocks.
I am all for creating multiplayer. It will require some concurrent messaging framework and data storage, because I don't want to reinvent so complex wheel.
from dreamblocks.
@AKryukov92 The solutions:
Convert the project to libGDX, so it will be much easier to develop the project.
Search and find a useful library to implement messaging and developing a multiplayer system.
DreamBlocks is written with the standard Java library, which will make the project more and more complex in the future.
What do you suggest to do? I rely on your experience.
from dreamblocks.
I checked libGDX site and found no information about networking support.
After some googling I have found:
- https://netty.io/
- https://javaee.github.io/grizzly/
- https://github.com/EsotericSoftware/kryonet
- https://mina.apache.org
Most of them provide similar functionality. Netty and grizzly are present in gradle repository to download.
Kryonet feature is serialisation framework in the same box. Probably it is more efficient than gson. It is a subject of research.
I found no documentation on site of Mina apache.
Other option is to use JMS.
We have following options:
- ActiveMQ
- Glassfish
- RabbitMQ
Those are messaging frameworks. But I think they will be useful only once you hit 10000 players.
They go with scheduling, load balance and other high load stuff.
I'm thinking of using Netty. It has good docs. It is present in gradle repository. I found one good tutorial from developers of one of the most popular MC server.
from dreamblocks.
Very interesting. I hear Kryonet many times in other projects and it is very widespread. I do not mean networking, but your research is interesting.
I would like to remove the external timer.jar and gson.jar library unfortunately I do not know good frames working with the standard java library.
Your advice, LWJGL is a very powerful and vast framework (many modules) do you think can come back to us to simplify the project? Obviously I do not mean the graphic part, LWJGL works with opengl and we use awt and swing.
I just saw Kryonet standing 4 years ago. Netty has many developers and is updated frequently, it seems a good choice, the best I think.
Glassfish I used it a friend of my programmer a few years ago. Is a widespread solution, I do not know any more, in this area I'm ignorant sorry :)
Thanks ^__^
I have to study and do a lot of research, I want to improve my knowledge and put into practice good ideas.
from dreamblocks.
Related Issues (20)
- can a launcher be added HOT 7
- Make inventory dialog as separate class HOT 4
- Use inventory visual layout made by @tobyplowy HOT 30
- 2x2 recipe identified with redundant resources in grid HOT 1
- Make Crafting grid as separate class
- Make InventorySlot as separate class HOT 2
- Esc menu HOT 6
- Move property toolPower of Tool to configuration file
- Move property breakType of tile to TileType
- Move speed modifier of tool type to configuration file
- Too large savegame HOT 7
- Mapgen HOT 1
- Inventory layout HOT 62
- NewGameMenu + StartMenu HOT 4
- Limit interactions with all data classes to limited number of methods
- More fun things in the world
- Achievements HOT 1
- Better textures HOT 27
- Improved controls HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dreamblocks.