Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Not sure how to do nc on windows #1943

Closed
jdavid82 opened this issue Jan 6, 2021 · 11 comments · Fixed by #1948
Closed

Not sure how to do nc on windows #1943

jdavid82 opened this issue Jan 6, 2021 · 11 comments · Fixed by #1948
Labels
kind/bug These are bugs. kind/documentation Documentation for Agones
Milestone

Comments

@jdavid82
Copy link

jdavid82 commented Jan 6, 2021

installed nmap but the ip and port can't be detected even though it's displayed with State Ready

@markmandel
Copy link
Member

Sorry - not sure I understand the question here? Can you please expand further, and outline the steps you took to your issue?

I think the title and description don't seem to match up, but not sure what you are using nmap for?

@jdavid82
Copy link
Author

Hi, sorry I wrote this text after clicking on the feedback button, so it would probably make more sense if I had the link to the page where I clicked on the feedback button, for context.

I don't remember the exact page where I clicked on the feedback button, but I do remember it not having enough documentation for windows users, it was more targeted around linux users. Sorry I can't provide useful info. Feel free to close this issue, maybe it would be good to automatically include the page link as part of the creation of the issue. Thanks.

@markmandel
Copy link
Member

Got it - you can install NC with WSL though - but we could build some docs that point to that for sure 👍

markmandel added a commit to markmandel/agones that referenced this issue Jan 13, 2021
Adding a couple of options for how to use `nc` on Windows.

Closed googleforgames#1943
@markmandel
Copy link
Member

Added a PR for ya!

@markmandel markmandel added kind/documentation Documentation for Agones kind/bug These are bugs. labels Jan 13, 2021
@jdavid82
Copy link
Author

Thank you.
I appreciate your responsiveness in updating the documentation, I don't mean to criticize and I do this with the best of intentions for helping other developers on the Windows platform get started as quickly as possible.

Please note that I'm a developer, I'm not a dev-ops person, so I don't know the ins and outs of Minikube, Kubernetes and Helm and how they all integrate with each other and why they even need each other (which is precisely why I was looking at Agones and their integration with Google Cloud so that they can manage it for me).

What I wanted to do is have:
My headless game instance running Agones
Agones running on Minikube
which would then be running on kubernettes
which would be in my local docker
in hyper-v
on my Windows 10 pro development machine.

And I couldn't do it. I had the latest Docker (maybe I shouldn't have but I don't know what version I would need), I know there was mention of a specific version of Kubernettes but not of Docker, I tried creating a Minikube cluster for Agones then install Agones using Helm but I couldn't run test on it (because the flag for installing the test package wasn't included in the instructions) so I tried to delete and install again but it got stuck on deleting, then I ended up deleting the whole thing and even uninstalling Docker, then I tried the local development guide but then got stuck looking for documentation on how my headless host game instance can send and receive messages from the clients.

My game is being developed using Defold which uses Lua, so I referred to Agones' REST documentation, but there was no mention of how to do client-host communication, there was plenty of life cycle documentation like initialization, server life cycles, player life cycles, watching server status change and all that, but I needed to get into the specifics of the game.

So I would like to suggest maybe identifying a guide that says These are the steps that you need to follow if you want to run Agones on windows 10 and here's example code on how you keep track of state AND sending and receiving messages between host and clients.

I understand that this all is actually very complex, because the host game has to be initialized with some parameters so that it knows the port of the server infrastructure etc etc, and I feel I'm being unfair in pointing out the problems I had when most of it is probably due to my lack of Kubernettes/Helm expertise, but if you could have a one-stop-shop, one guide, end to end, on how to do what I just mentioned, that would make a huge impact and it would make reconsider (for sure it will help other new developers).

Happy to assist further if you have any questions or if you need me to test any guides.

Thank you.

@markmandel
Copy link
Member

Thanks for your write up @jdavid82 - this is where the Prerequisite Knowledge guide is likely very important for you:
https://agones.dev/site/docs/prerequisite-knowledge/

Because to use Agones, you do need to know all of the things you outlined above - that's the foundation of the project.

From your write up, unfortunately, I feel like Agones might not be the right project for you. Agones is an orchestration platform for dedicated game servers -- it doesn't handle anything to do with sending data between clients and servers, that's an exercise for the user, based on game type, engine and technical requirements.

But if you are still keen, I highly recommend going through the prereq knowledge guide first - getting a handle on the foundational aspects, and then coming back!

I wish you the best of luck with your game! 👍

Some quick questions though:

I couldn't run test on it

What tests where you trying to run?

because the flag for installing the test package wasn't included in the instructions

What test packages are you referring to?

tried the local development guide

That's for actually developing features on Agones, not for running games on Agones itself. That would explain some confusion.

@jdavid82
Copy link
Author

Because to use Agones, you do need to know all of the things you outlined above - that's the foundation of the project.

From your write up, unfortunately, I feel like Agones might not be the right project for you. Agones is an orchestration platform for dedicated game servers -- it doesn't handle anything to do with sending data between clients and servers, that's an exercise for the user, based on game type, engine and technical requirements.

I see, fair enough.

I couldn't run test on it

because the flag for installing the test package wasn't included in the instructions

I was referring to this where it says Check the Agones installation by running the following command

That's for actually developing features on Agones, not for running games on Agones itself. That would explain some confusion.

Yep it does explain my confusion :)

I wish you the best of luck with your game! 👍

Thank you! And thanks for your reply!

@jdavid82
Copy link
Author

Last two things:

  • Does that mean that something like Colyseus could be hosted on Agones or is Colyseus still considered to be a competition of Agones?
  • Feel free to close this issue, thank you.

@markmandel
Copy link
Member

I don't know enough about Colyseus to say definitively - it's possible you could host it on Agones? Does it run a single authoritative, dedicated server?

@jdavid82
Copy link
Author

jdavid82 commented Jan 14, 2021

It's a Node.js-based game server which can scale horizontally through something they call "RedisPresence", here.
I've managed to make progress on the game by also running Colyseus on my dev machine. But I still have that go-live concern at the back of my mind because I'm only familiar with IIS+asp.net tech but not with Node.js.

I've decided to make it so that one of the clients hosts the game logic and the "Room" is mostly used for "relay" and for keeping track of small state such as score and players' health.

I will do more research about what kind of hosting I can implement but if you think my tech stack fits somewhere in the picture with Agones please let me know and I'll look further into it.

Thanks

@jdavid82
Copy link
Author

jdavid82 commented Jan 14, 2021

I mean, it can scale but it doesn't have to if it's sitting on Agones in Google Cloud 🤔
But in my limited understanding (and I could be wrong) it looks like Agones is more geared towards headless game instances that can work as websocket servers (for example).
If my game had the ability to work as a websocket server (it can only be a client unless I write a websocket server component to it, but I don't know how).
If it could run as a websocket server then I can see how it could fit into Agones' infrastructure.
Anyway I'll stop thinking out loud

aLekSer pushed a commit that referenced this issue Jan 19, 2021
Adding a couple of options for how to use `nc` on Windows.

Closed #1943
@markmandel markmandel added this to the 1.12.0 milestone Jan 26, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug These are bugs. kind/documentation Documentation for Agones
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants