I would suggest some sort of Favorite option for servers as times goes on or even just recent tab. The reasons for this is as more servers are hosted the list will become more annoying and annoying to find previous servers that you had played on. Even if it's something simple as a star column to indicate you played there before.
Team, I understand this is Pre-Alpha, please take this as constructive criticism that I am making to make a great game even better. I love GRAV... but they have a critical flaw... they spawn additional processes per active planet. EGS is doing the same thing. This makes it really hard to run dedicated servers for my community, and for GSPs to sell them. GRAV does not have a big foothold in the dedicated server community... this is one of the big reasons why... I'm worried that EGS will follow in GRAV's footsteps since we are already seeing the same flawed design in EGS. Network port assignments... I really need to have full control over what network ports are used by EGS. Any part of EGS that sits on a TCP or UDP port needs to be assignable or automatically assigned in a contiguous block (ie I configure the game port as 32000 and EGS uses a range within ports 32000 - 32010). This is imperative for those of us that run multiple games on a single piece of hardware and for GSPs to offer services to customers who cannot or do not want to run EGS on their own). Performance... going into the first point I put in here, 40% to 60% CPU use is far too much. I would target around 5% use as that is the highest I see with other games on my hardware (7DTD, ARK, etc... but not GRAV, it uses 15% which is why I can only host 1 instance for a good friend) I understand this will be worked on, and you guys are just starting on this part of the journey... but I listed it here because it is important. If I can play the game for more than 3 - 5 minutes, I will continue to give you items I feel needs to be worked on. I currently get disconnected from the dedicated server every 3 - 5 minutes (no crashing on either side, no indication why it is not working). I have a post in the bugs thread so we can work on why it is happening. And to be clear, this is meant to be positive, I love the game, and really want to get the dedicated servers running! Thank you!
I 100% disagree with you on this. I think spawning a new process is the way to go and there is a massive reason why their doing this. Unity3D does not have proper threading but rather Coroutines that is not always in the favor of the developer. I have not touched Grav in a long time but it was a pain before for the average user to setup but this is great for real server owners. I see that your trying to make a profit off this so I can see spawning new processes and not being able to keep a limit on a server could cause problems for a service provider but this is a dream for people like me. If one world can hold say 50 players and I have 1000's of worlds spread over multiple servers down the road then this is nothing but perfection. This is similar style to how MMO's run their servers as well with load balancers etc. No for port controls I agree and working on performance is always good too.
I think that your server farm model is the ideal way to go. Your multiplayer galaxy will only be limited by the hardware you allocate. And for-profit servers can charge based on how many active zones are allowed. Ultimately I would assume that idle zones will simply shut down after a certain idle time, so as long as you can handle 1 zone per player plus some percentage of extra zones for switching (10%?) the user should see it as an immense galaxy. The coding could even default to allow 1 zone per player plus 10% of those zones always rounded up, and have an override for advanced admins.
I'm sorry you disagree, but this method is messy and does not scale... how many processes will have to be running if you have 4 players in the game, two players are in solar system 1, 1 player is in solar system 2, and the last player is in solar system 3? Assuming there are 3 planets per system: System 1 = 4 processes (3 planet, 1 orbit\space) System 2 = 4 processes (3 planet, 1 orbit\space) System 3 = 4 processes (3 planet, 1 orbit\space) Server = 1 process (Control) Total number of processes: 13 13 Processes... that brings up a lot of cause for concern... an effect of a bug in the code would impact the server at least 12 times harder, an error in managing processes could cause a major issue... I've already had playfields 005 - 009 created in testing today when the control process decided to start up another round of planets... with 12 game processes running, I could suddenly have another 12 processes running unchecked. There are multitudes of small issues that can become major issues when multiplied at least 12 times. I would also ask that you refrain from making assumptions. I run a server for a group of friends and co-workers for which I do not get paid, I also assist a friend of mine with technical help for her GSP... which I do not get paid for. My suggestions are my own and not fueled by any desire to make profits. (I'm not angry, just asking you to not assume). But in all honesty, take a look at the 1000 world example... are the Empyrion Devs really interested in managing 1000 processes across multiple servers? Hell I manage handfuls of processes across a global infrastructure consisting of more than 4000 servers and I've never seen everything hinge on a single process. There are so many checks and balances that would need to be put in that you would soon have another watchdog process, and a watchdog process for the watchdog process just making sure everything is not going to hell every few seconds. There are better ways to multi-thread applications versus starting multiple processes... forking off into another process is usually the last resort when it comes to parallel processing (at least in my experience). Well this has become a novella, my apologies. Please remember that anything I say here is mainly for discussion, none of it is meant to be negative to anything or anyone (except the practice of multi-threading by creating multiple processes).
I have a question that does not belong in bug reports or feature requests so I will post it here. After upgrading to the steam "beta" all of my saved games are inaccessable. I was wondering what the purpose for that is. I did find a workaround to get my games back but I was wondering what benefit starting completely over will give me. Thanks
We NEED grouping or factions of some sort or griefing will be out of control. Some sort of ownership of your stuff. Many open world games do not have a system in place for this and it drives players away that have jobs, families, and other stuff that prevents massive amounts of time in-game....
"bug in the code would impact the server at least 12 times harder" Actually it's 12 times more redundant if done properly. If one world crashes then that is just that world at effect not every player. If one world simulation speed is dropping like Candy then it's the one under effect. My assumption of you working for GSP was purely how you were voicing your concern for another business. I do apologize is assuming. If done right 100 process should not matter as long as it has a proper process that manages it for you. Spawns and removes instances at will and shuts them down etc. Rather then saying 20 instances are bad it should be we should have the 15 of them not in use shutdown to cut down on performance and useless use of memory and cpu time. The idea is actually good and works well if done correctly. Trust me in a game like this your looking for a small time few friends server if you merge it all up the way it is right now. They are also using Unity to run it and did not rewrite a dedicated server from scratch. I'm pretty sure it's headless mode. At this point EGS took the easy way out but the one that works. The only other way is many months away and not the easy way. The only other way is well... Not spawning new processes and just throwing it all into one process. With Unity3D and some the limitations it would be a disaster. So their only choice is to rewrite everything from scratch and will see servers in a few months. I for one rather they keep on this current path and reevaluate as time goes on. Mainly to decided how they will handle multiple instances when it comes to a procedural generated universe. This weekend Grav had a free weekend. The Multiple Servers actually worked in the fav of the devs by far. Their using Unreal and also using headless to run their servers. It's messy at times but it also works more then Space Engineers for a good comparison though it has nothing instanced. Even that people made a mod for Space Engineers to spawn multiple servers and connect them to one via gates. EDIT: I just want to express my negativity is not trying be negativity but my experience working with Unity3D ongoing and knowing it's sad limitations in this area.
1 Feedback . My English are not good. Im typing in German. Server Installation ist sehr gut und einfach. Läuft sehr gut auf einem Windows 2012 V2 Server. Sehr stabil Verbrauch sehr wenig RAM auch wenn mehrere Leute auf dem Server sind. Kein ruckeln. Wir hatten einen Buck, unzart ist einer meiner Leute im Boden gebuckt. Nach erneuten Login war es weg und er stand da wo er vor dem Buck war. Future in The Server confic. Server. - Admin Login for The Game - Drohne Attacke enable / disable - Ressourcen configuration Max / min Future auf dem Server. - Admin Login - Groups / Clan (2 Player in Group A / 2 Player in Groub B ...... ) - Better Level This is my First Feedback and Tipps. I send later more Feedback from my Blooddragon Team from The Server. Thx and i Hope you Unterstand my a Little.
- There is a bug when you turn off the constructor and cancel something in the queue, all the stuff you needed for construction get lost. (more exactly, the bug take only then place when more then one player use the same constructor) - Server list is buged. Not all server are shown in list. - There are randomly "white holes" where players fall under the world - And one proposal: Please make food stackable Thank you for bugfixing ;-) Daniel H.
I have fallen out of the world many a time in this game. If I exit and reconnect on the dedicated server I spawn back on land where I was without losing any inventory. However not falling would be better. It is like it triggers a noclip (garrys mod term). I second, third and fourth that food should be stackable. If I can stack 10 rocket launchers in my inventory, then 10 tomatoes shouldn't take 10 slots
This is my suggestion after my very brief encounter with the server system... Server setup: A.Server setup screen need a better UI with more options. Current method of editing yaml file is not much problem but with more admin options it could become chaotic . B.which brings my second point: admins need more control over server setup and execution. following is must have options: 1. specify seed 2. optional game mode (creative and survival) 3.add server description 4.have spacial admin mode to fly around and inspect the server gameplay quickly 5.host more than one server at a time (have more than one setting in the yaml file or one yaml file for each server) 6. Specify official language for the server Client side: 1. need mouse wheel control to scroll up/down in server list. 2. have a favorite/ recently played list 3. have option to refine the server list (e.g. full/password protected/ ping range etc) 4. have a search option 5. can see server description if mouse over the name of a server. 6. If all POIs are discovered in a planet/moon then new players who are joining late can already see them in map, as they are very good source of xp new players must have the chance to get xp from them too else initial game will be all about grinding for xp by plant collecting Will update this post as I experience server hosting and playing more
I would like to have bind-ip setting in the yaml. I have a couple of IPs on my server and EmpyrionDedicated.exe is binding on 0.0.0.0 (all IPs). I'd like to be able to specify which IP the server binds to so I can avoid conflicts with other services. I have been able to move the other services around, but it's not ideal.
I agree with a lot that Navonil brings up, figured I would add my opinion a well Editing the yaml file is my preferred method of server configuration, I personally don't like GUIs as it can be difficult for me to remote into a system to make an edit via RDP. I can edit the yaml file over FTP from my phone when needed. With that being said, I think if the Empyrion client had a menu to remotely re-configure an existing server (if you have admin) that would be really cool. I have some ideas on how this could work if you are interested, shoot me a PM if desired. I'd like to eventually see a moderator and admin mode for server management. In admin mode, the user can fly, is invulnerable, is invisible to other players, but cannot interact with the world at all. Flying would include "no clipping" so the admin could fly through walls. The admin would not be able to interact with anything, console commands would need to be used in order to change things (kick, ban, give, etc...) and/or have an Admin GUI to help with administration while in admin mode. Moderator mode would be similar, but the admin would be able to configure what "powers" the moderators had... ie they can give things to players, they can kick and ban players, but they cannot destroy structures. This would be further down the road as you guys are already have a lot to do, and this is not a short/easy task. In terms of hosting multiple servers, give us control on what ports are used for the game, and for telnet. My idea would be to have the admin select the gameport, then Empyrion as a whole would only use ports that were within the range of gameport + 20 (or whatever amount of ports you may need). Also for the telnet port, either add another line to the yaml to let us pick the port, or make it always gameport + 1 (or something similar). If possible, consolidate the ports to the smallest range you need. Also, allow me to pick which IP the game binds to. I run multiple servers for a clan / guild and having those options makes it easier to run all of them at once. As for the client, I like a lot of Navonil's points... they are all very good. I don't like the idea behind the POI's... I don't think new players should have the planet mapped out for them in any way. I think an in-game friends list would be a good idea, then there could be a server option to allow friends to share POIs if they choose to. The server admin controls if this is allowed and the players control if they choose to share or not. Thanks!
I think the flat text config and cli interface (telnet currently) is the preferred method for managing a server. Eventually I hope it will be on linux and I can just run the cli under screen and be able to ssh in for management from any pc. Another alternative is launch a small webserver and have the management all done from an internal webserver on an alternate port. (a user/pass can be initially set up in the yaml file). Personally I would think that dedicating either a server or a virtual machine for each game is ideal over trying to run 3 different worlds on one OS. MUCH easier to manage. Linux KVM is a really easy VM environment to set up with full performance.