nanoblox / core

https://nanoblox.github.io/core/
Mozilla Public License 2.0
57 stars 18 forks source link

Environments #79

Open 1ForeverHD opened 3 years ago

1ForeverHD commented 3 years ago

For those who stumble across this card and are wondering what an 'Environment' is: imagine a game where players have their own personal section of land. Within this local area, they can configure their own admin roles, settings, bans, etc which saves. Everything which takes place within this area though remains within this area. An area can be anything from a plot of land in a server, to a private server. This in essence is an 'environment'. The goal with Nanoblox is to allow the easy creation of these environments, while ensuring restrictions are in place to prevent abuse. By default, there is the 'Game/Global' environment, where changes impact every server (i.e. the default behaviour you'd expect of admin commands).




Ben's latest thoughts and proposals:

1. APIs should be simplified

2. Redesign how environments are defined

3. Every record needs to have a UID

4. Every System Service needs to change

5. Virtually everything should use 'pathways'

6. How system items are displayed

7. Belonging to multiple environments

8. Objects/services now have to consider environments

9. Reconsider some of the challenges posed by the current System and ConfigService

10. GDPR Compliance




Currently Nanoblox has a 'global' environment where data can be saved (such as bans, roles, settings, etc).

Now consider how a similar environment can be setup for private servers and servers created through the SavePlaceAPI: https://developer.roblox.com/en-us/api-reference/class/AssetService

Also consider how zone-based environments can be created. For example, a game where everyone has an assigned piece of land, and only admin commands can be used in that zone on players in that zone. The environment can be associated to a player, but can also persist after this player leaves.

This will enable private server owners for example to permanently ban people and create saveable roles within their own private place whilst no spilling out into the rest of the game universe.

Revamp System user.temp.descendantChanged

Other

1ForeverHD commented 3 years ago

To do for now

Brainstorm

Mostly System / Environments

Additional

Test

Networking

Data Caps