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
Hi all, thought i’d leave some broad feedback.
I’ve a career in tech but been ages since i was a developer (15yrs ago). Currently CTO for SaaS stuff. Getting into game dev for fun as it’s always been a goal to play around and build my own game. Have previously been learning unity and Photon PUN for past 6 months and had great fun, if a little steep
Simplifying a complex thing like networking is hard and this platform looks really really exciting (v1.0 also sounds like it’s a huge step forward).
I believe the success for frameworks / platforms like this, is dependant on the quality and volume of documentation and examples and then community assistance - at least for entry and mid level game devs.
First steps tutorial is great - and in general the polish of your documentation is above most at the moment. Had a few questions re: how objects were instantiated in the first tutorial but this was answered super swiftly on discord - amazing!
One of the most useful areas i would find is some central visualisation / video of overall architecture and authority, something tricky to do i’d imagine. As i like to learn this first (but maybe that’s just me). Currently i tinker around with tutorials until the higher level concepts start to filter through to my pea sized brain.
The first steps and basic syncing has allowed me to create a basic scene with moving physics objects and basic projectiles. I’ll next move onto collisions and detecting who hit what, with what and scoring systems. It would be great to see a tutorial specifically around how you may persist player scores, inventorys, health etc for room based scenarios - but i haven’t dug too deep yet.
My aim is to replicate my unity + photon PUN game, in Coherence , then move on to looking at VR
Anyways - just wanted to say hi and thanks. my TLDR for the first steps is: Really good, well curated concepts, the more videos and code examples in the documentation, the better.
I’ll post more as i explore further!
Oh… and baking and syncing the schema - sometimes i forget - would be great to have an article on more indepth detail on what’s going on here, and in the future some automated prompt to do this pre - play / compilation, if you forget would be great - but im aware i may be missing awareness of a feature / workflow here myself!
Hey Ben, welcome! And thanks a lot for stopping by and leaving some feedback, really appreciated!
This is great feedback, and something I’ve registered myself too. Especially given that in coherence we have this slightly different terminology than the usual (here what people call the “server” we call a Simulator). So maybe having a video targeting exactly that, as an entry point to the learning, could be good.
Noted!
Don’t forget you can always set Baking to happen when entering Play Mode or Building, and same for schema upload: