Skip to content

Conversation

@Blixibon
Copy link
Member

This code makes client-side VScript a tool which could be properly used by mappers.

  • A new logic_script_client entity which doesn't have entity groups, but has the code and inputs to execute and interact with scripts on the client.
  • A new user message for calling script functions on a client-side entity index. (A user message for actually running code was excluded over anecdotal security concerns; needs further research)
  • A bunch of new client-side VScript functions and a hook which allows direct control of client-side ragdoll entities.

Before, client-side VScript was mostly limited to the script-based material proxy feature, the ability to create script scopes on entities, and a few new functions to read a server entity's state. This PR will allow for a bunch of new applications:

  • Influencing client-side ragdolls
  • Interaction between entities in the map and material proxies without material_modify_control
  • Creation and manipulation of entities which only exist on the client
  • (TODO): Player-specific behavior for MP?
  • (TODO): UI control?

PR Checklist

  • My PR follows all guidelines in the CONTRIBUTING.md file
  • My PR targets a develop branch OR targets another branch with a specific goal in mind

@Blixibon Blixibon added Enhancement New feature or request VScript Mapbase - Involves VScript labels Dec 25, 2020
@Blixibon Blixibon mentioned this pull request Dec 26, 2020
2 tasks
@Blixibon Blixibon marked this pull request as ready for review January 23, 2021 16:11
@Blixibon
Copy link
Member Author

There's some other things I want to do with client-side VScript in the future (e.g. UI stuff or measures for MP), but for now, this is functional for the purposes of Mapbase v6.2 and would be good for people to start using now, especially with things like CNetMsgScriptHelper being available.

@Blixibon Blixibon merged commit 4441911 into develop Jan 23, 2021
VDeltaGabriel pushed a commit to Project-P2009/p2009_sdk that referenced this pull request Apr 27, 2023
…ntside-vscript

Proper client-side VScript control
@Blixibon Blixibon deleted the feature/clientside-vscript branch March 2, 2025 20:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Enhancement New feature or request VScript Mapbase - Involves VScript

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants