In the interest of providing the best point of entry to coherence, we’re looking for feedback on the First Steps tutorial project, to make improvements to it and to inform the creation of more projects. If you used it and followed the documentation, we’d like to hear what you liked and what you didn’t.
Feel free to throw here any thoughts you have in a free form… or use the questions below to inspire yourself:
Did it cover its topics in a satisfying way?
Was it the right shape to teach those concepts?
Do you feel there were gaps? Any topics we missed?
Did you find the project when you needed it? Was it discoverable?
Did you download the Unity project, or just went through the docs?
Thanks for any thought, each one of them helps us move the needle to a better onboarding
All in all was great! Specially for someone with no experience in multiplayer.
I was following the tutorial along the Unity Project sample code.
After completing all steps I felt confident enough to start implementing client-client multiplayer features in our project. In a matter of minutes, I could implement coherence with a third party asset for vehicle physic, and I had several networked car instances running on a playground scene, without adding a single line of code.
Being aware that this is a “First Steps tutorial”, I did miss some more “advance topics” covered, like Server-authoritative model, with a sample project.
I really wish there was more on Simulators, working examples, walkthroughs, best practices, etc. The documentation is there but Walkthoughs/videos/codealongs are honestly the best way to learn. This project looks pretty newish which is exciting, but it also means there is very little help in the way of tutorials online etc.
Sorry for second reply, but wanted to reiterate what I meant - The First Steps tutorial is good and it does help you set up coherence and integrate it into your workflow, but some server side logic and examples thereof, maybe an example of a Simulator that makes and stores accounts or a Simulator that saves a key or something and loads it at a clients request. Small things like that that be extrapolated on by the person learning how to use coherence.
Hey @Fontinixxl and @MelKaven , thanks for chiming in, here. We really need folks like you to let us know what and how to improve.
If you’d like, we’d really appreciate if you start a new topic with some specific wishes, then we can dive deeper and start prioritizing.
Thanks @Fontinixxl and @MelKaven. As you can imagine, Simulators being a next level of complexity, we wanted to tackle the basics first. But as I can see over and over again, people are very interested in server authoritative gameplay. I think we will focus on that next.
In my head, I see this as a separate project. Another 100MB kind of project like this one. Embedding Simulator examples in First Steps would make the project bigger and less easy to get started with. Do you feel the same? Imagine it having 4-5 more scenes, and maybe double the scripts in the Scripts folder. Also consider that the more a project has, the longer it takes to load, to enter/exit play mode, compile scripts, and to build (which, as you know, we do often in multiplayer development )
So I personally see it better as a separate one, but would love your thoughts too.
@ciro Yeah, I think that most people looking for developing a multiplayer game have some basis of multiplayer understanding so its definitely okay to show them deep parts of the api. The thing is, if people are looking to develop a multiplayer game they are looking specifically for a library to fit their needs and Photon already has some easy to set up cloud services, lots of stuff like Mirror has pretty simple drag and drop syncing like coherence. Riptide has really simple udp stuff, but almost none of those networking libraries have really in depth documentation and walkthroughs. The photon tutorials are like 3 years old on their youtube. Mirror has stuff on github but its all really dated too.
Oh I hear you loud and clear, we definitely need more tutorials. We’re working on them! But in building a library, we had to start from the beginning. You’re right that if someone is coming from other multiplayer frameworks they will already have the terminology in place. But so many people also have never done multiplayer before! It would be not so nice of us to ignore them.
(by the way, you sound like you used quite a few frameworks in the past?)
What I found interesting when we did GGJ was the number of people wanting to do server-authoritative out of the box. I find it interesting because that model usually leads to huge server costs, and for some kind of games it could make sense to structure things in a different way - if cheating is not an issue.
Oh, one curiosity:
What did you mean by this? Videos, right? Something like this? (just took an example out of many)
I’m cool with keeping the feedback in one place, if it concerns the tutorial content! If it’s suggestions on the tech, then yeah, a new thread is in order.
Thanks again for the thoughts - both of you, it’s great to hear how the tutorial was received