Skip to content

Set up Cursor Cloud dev environment for the CyberVerse server - #3

Draft
nobody71004 wants to merge 1 commit into
masterfrom
cursor/setup-dev-environment-9fa3
Draft

Set up Cursor Cloud dev environment for the CyberVerse server#3
nobody71004 wants to merge 1 commit into
masterfrom
cursor/setup-dev-environment-9fa3

Conversation

@nobody71004

Copy link
Copy Markdown
Owner

Summary

Sets up the development environment so the CyberVerse server can be built, run, and smoke-tested end-to-end in the Linux cloud environment. Adds AGENTS.md with durable, non-obvious setup/run instructions for future agents. No application code was changed.

Only the server is runnable here; the client/ is a Windows-only Cyberpunk 2077 game mod and cannot run in this environment.

What was installed (baked into the snapshot)

  • .NET 9 SDK (~/.dotnet)
  • vcpkg (~/vcpkg), ninja, build tooling
  • gamenetworkingsockets + transitive deps built via vcpkg (x64-linux-dynamic triplet)
  • Pointed the c++/cc alternatives at gcc/g++ (base image defaulted c++ to clang, which can't find libstdc++)

Update script (dependency refresh on startup)

git submodule update --init server/Native/deps/zpp_bits
[ -x "$HOME/.dotnet/dotnet" ] && "$HOME/.dotnet/dotnet" restore server/Managed/Cyberverse.Server.csproj || true

Hello-world verification

Built the native C++ lib + the .NET managed server, ran it (listening on UDP 1337), and connected a real GameNetworkingSockets client that authenticated and joined the world. Server logs confirmed:

Player NightCityRunner authenticated (connection ...). Total connected: 1
Player NightCityRunner joined the world at (100, 200, 300)

hello_world_demo.log

Non-obvious gotchas (see AGENTS.md)

  • Must use gcc (not the default clang) for the vcpkg compiler-detection step.
  • Must build vcpkg deps with the x64-linux-dynamic triplet — the default static triplet doesn't export the GameNetworkingSockets::GameNetworkingSockets CMake target the project expects.
  • The native .so must be next to the managed output (or on LD_LIBRARY_PATH) for P/Invoke.
  • No automated test suite / no headless client exists in the repo.

Testing

  • cmake --build server/Native/build (native shared lib)
  • dotnet build server/Managed -c Debug (managed server)
  • ✅ Server runs and listens on UDP 1337; client authenticates + joins world end-to-end

To show artifacts inline, enable in settings.

Open in Web Open in Cursor 

Co-authored-by: XEROX710 <nobody71004@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants