Skip to content

Adding new types (Ray, Region3, Region3int16, Faces, Axes, Content) for convenience and type completeness - #18

Open
maneetoo wants to merge 5 commits into
ericplane:mainfrom
maneetoo:main
Open

maneetoo wants to merge 5 commits into
ericplane:mainfrom
maneetoo:main

Conversation

@maneetoo

Copy link
Copy Markdown

Good Afternoon, @ericplane

I'm genuinely glad this library has emerged as a replacement for the now rather outdated ProfileStore. It's the only DataStore library that's actually a pleasure to work with.

Why?

I'm currently developing my own game, and the only shortcoming I've found in the library is the absence of several fairly important types — Ray, Region3, Region3int16, Faces, Axes, and Content. So I decided to implement them myself to help make the library a bit better and more complete; these types will be useful to developers whose games rely on them frequently.

What has been changed:

  • types/index.d.ts — Added the new types to the ScribeModule interface (alongside the existing readonly Vector3/CFrame/etc. lines) and added the same six types to the DatatypeValues interface.
  • src/Internal/datatypes.luau — Added the new types (Ray, Region3, Region3int16, Faces, Axes, Content) to codecs for replication and profile saving.
  • src/init.luau — Added six new functions to Scribe for the new types (Ray, Region3, Region3int16, Faces, Axes, Content) and updated the shared doc comment above function Scribe.Vector3 as well as the @prop Datatypes table doc comment.

What was intentionally left unchanged?

Documentation — I chose not to touch it, since the current build (v2.5.0) doesn't yet include these changes; adding types to the docs that don't exist in the build yet would only cause confusion.

@ericplane ericplane self-assigned this Sep 28, 2026
@ericplane ericplane added the enhancement New feature or request label Sep 28, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants