jaDevelopment
System StatusContact SupportGo to jaDevelopment
Product Documentation
Product Documentation
  • Introduction
  • Vision Education MIS
    • Product Setup
    • Discord Bot Integration
      • Behavioural Commands
      • Student Management
      • School Overview
    • Features & Pages
      • Create Profile
      • Login & User Agreement
      • Home Page
      • Browse Students Page
      • Student Profile
        • Attendance
        • Behaviour
        • Activities
        • Timetable
      • Year Group Page
      • Browse All Staff
      • Event Page
      • Staff Attendance
      • School Details Page
      • Timetable Page
      • Lesson Overview Page
        • Lesson Register Page
      • Users & Security Page
      • Behaviour Dashboard
        • Incidents
        • Merits
        • Behaviour Points
        • Isolations
        • Detentions
      • On Calls
      • Vision Settings Page
  • Radiolink
    • Product Setup
    • Configuration
    • Features
  • ShiftSync
    • Product Setup
Powered by GitBook
On this page
  • Configure Group
  • Configure Data
  • Webhook Integration
  • Commands
  • On Call Alerts
  • Nametags
  • Gamepasses & Lanyards
  • Isolation and Relocation Data
  • Configure Interface
  • Session Data

Was this helpful?

  1. Vision Education MIS

Product Setup

PreviousIntroductionNextDiscord Bot Integration

Last updated 2 months ago

Was this helpful?

You must enable HTTP Requests and API Services within the studio tab to allow this product to load into your experience. Please check this before opening a support ticket within the server.

In order to utilise the Vision System, you need to have purchased a licence from the jaDevelopment Website, which can be found . Once purchased, you will be provided with plenty customisation options through the Settings module, accessible within the jaVision - Version 1.6.1 folder.

You can begin customisation by accessing the . Information is already provided on each line. Please refer to either that, our setup video, or additional information & support from this page.

Configure Group

["GroupID"] = 14665139, -- Group ID
["StaffID"] = 1, -- Minimum staff role ID to use system
["AdminID"] = 1, -- Minimum admin role ID to use more advanced features, for administrators/leadership only
["StudentID"] = 1, -- Maximum student role ID
["SchoolName"] = "jaDevelopment", -- School name
["SchoolType"] = "Secondary", -- Type of school (ie. primary, secondary, academy)
["IconID"] = 0, -- Custom school logo ID
Options
Description

GroupID

The ID of your Roblox group

StaffID

The minimum role ID a user has to be to access the staff version of Vision

AdminID

The minimum role ID a user has to be to access specific features, such as timetabling, settings, etc

StudentID

The maximum role ID a user has to be to be considered a student (e.g 10+ for staff, 9 and below for students)

SchoolName

Your specific school name

SchoolType

Type of school (e.g primary, secondary, academy)

IconID

A designated image ID for your school, appears on all Vision assets/features

Configure Data

["VisionPlayerDataStoreKey"] = "RANDOMKEY-Players", -- Change this to anything of your choice (stores player data)
["VisionSettingsDataStoreKey"] = "RANDOMKEY-Settings", -- Change this to anything of your choice (stores general vision settings)
Options
Description

VisionPlayerDataStoreKey

A hidden, specific & random key of your choosing. Saves individual player data for your game

VisionSettingsDataStoreKey

A hidden, specific & random key of your choosing. Saves specific vision settings for your game

Webhook Integration

["VisionWebhookURL"] = "",
["WebhookColors"] = { -- Must be a hex value, with '0x' positioned before
	["Green"] = tonumber(0x2c8c26),
	["Red"] = tonumber(0xba2b20),
	["Orange"] = tonumber(0xff9220),
	["Grey"] = tonumber(0x595959)
},

Commands

["Commands"] = {
	-- Chat-based Vision control commands
	Enabled = true, -- Enable/disable commands
	Prefix = "%", -- Command prefix
	
	["CommandNames"] = {
		Isolate = "isolate", -- e.g %isolate USER REASON or %isolate USER
		Positive = "merit", -- e.g %merit USER AMOUNT or %merit USER
		Negative = "demerit", -- e.g %demerit USER AMOUNT or %demerit USER
		Relocate = "relocate", -- e.g %relocate USER REASON or %relocate USER
		NonUniform = "nonuniform", -- e.g %nonuniform USER
		Timeout = "timeout", -- e.g %timeout USER
	}
},

On Call Alerts

["OnCallsEnabled"] = true,
["RankIDs"] = {1, 2, 3}, -- Choose every rank ID, separated by a comma which are able to manage on call alerts

Nametags

["NametagsEnabled"] = true, -- Toggle nametags being visible
["Staff Icon"] = true, -- Toggles staff icon above staff nametag
["Admin Icon"] = true, -- Toggles admin icon above admin nametag

Gamepasses & Lanyards

With the introduction of commands, you are not required to use gamepass IDs to distribute non-uniform or timeout passes. These can be set to 0 as shown below, to disable gamepass requirements. You can use and have both gamepass and commands to give out these passes.

["NonUniformPass"] = { -- Non Uniform Pass will display as an additional tag above the player's head
		Enabled = false, -- Enable/disable pass
		GamepassID = 0, -- Provide correct gamepass ID (set to 0 if you wish for this to be disabled)
},
["TimeoutPass"] = { -- Timeout Pass will display as an additional tag above the player's head
		Enabled = false, -- Enable/disable pass
		GamepassID = 0, -- Provide correct gamepass ID  (set to 0 if you wish for this to be disabled)
},
["Lanyards"] = {
		Enabled = true, -- Should lanyards be automatically equiped on staff on server join
		ColorTheme = Color3.fromRGB(255, 146, 32),
		LogoID = 0 -- Seperate logo idealy in black, if left as 0 it will use the main icon id
},

["CustomLanyards"] = {
		Enabled = false,
		
		GroupLanyards = {
			["Sixth Form"] = {
				Enabled = false,
				CardColourTheme = Color3.fromRGB(34, 67, 35),
				LanyardTitleColour = Color3.fromRGB(255, 255, 255),
				TextureType = "Student" -- "Senior Leader", "Student", "Staff" OR "Custom" (Custom shows the Group name with the default Group colour)
			},
		},
	},

Isolation and Relocation Data

With the recent changes, you are not required to have an actual isolation team in your Teams section of your game. You can set this to nil and the isolation feature will still function the same.

To integrate your own isolation team, plese replace nil where it says ["IsolationTeam"] with:

["IsolationTeam"] = game:GetService("Teams").Isolation,
["Isolation"] = {
		Enabled = true,
		["IsolationTeam"] = nil, -- Set a designated Team for students to be isolated into, not required
	},
	
["Relocation"] = { -- Additional, optional feature for traditional removing/relocating of students
	Enabled = false,
	TeleportToFolder = "Relocation", -- The name of the folder with the spawns that the student will be teleported to (for relocate command)
},

["DisableJumpPower"] = true, -- Should jumppower be restricted to 0
["TeleportPlayer"] = true, -- Should the student be teleported to a specific spawn

Configure Interface

["UI Theme"] = "Light", -- Select a UI theme for Vision (Light or Dark)
["Boot Screen"] = true, -- Toggles boot screen
["Session Details Screen Position"] = 1, -- Enter type of screen position (1: Top, 2: Bottom Left, 3: Bottom, 4: Bottom Right)
	
["ColourTheme"] = Color3.fromRGB(255, 146, 32),
-- Set the primary colour theme to any colour if your choice
-- Default colour is Color3.fromRGB(255, 146, 32)
	
["Timezone"] = "GMT", -- Accepted timezones: BST, GMT, EET, CET, ET, CT, AEST, AEDT

Session Data

With this latest release, the system of teams/year groups has been altered. You can see below, that we have a list of "groups" (year groups), with the name and role IDs. in the Roles = {1, 2, 3} you must place each role ID that you would like to have that specific year group. For example, I want role IDs from my group: 250 to have the Year 7 group. This would look like:

{ Name = "Year 7", Roles = {250} },
["Groups"] = { -- List of student groups. Place corresponding GROUP role IDs into the Roles table {}
		{ Name = "Awaiting", Roles = {1, 2, 3} },
		{ Name = "Year 7", Roles = {4} },
		{ Name = "Year 8", Roles = {5} },
		{ Name = "Year 9", Roles = {6} },
		{ Name = "Year 10", Roles = {254} },
		{ Name = "Year 11", Roles = {255} },
},
["ClosureTime"] = "19:45",
["Periods"] = {
		{ Name = "Form", Time = "08:00", AttendanceIsLogged = true},
		{ Name = "Period 1", Time = "09:00", AttendanceIsLogged = true},
		{ Name = "Break", Time = "10:00", AttendanceIsLogged = false},
		{ Name = "Period 3", Time = "11:00", AttendanceIsLogged = true},
		{ Name = "Lunch", Time = "12:00", AttendanceIsLogged = false},
		{ Name = "Period 4", Time = "13:00", AttendanceIsLogged = true},
}

The periods section has been altered as well, to be more simpler to understand. You can copy/remove each line in the Periods to create or remove one.

Options
Description

AttendanceIsLogged

Determines if a lesson/period appears as a lesson and configures whether or not students can be marked in or not

Time

Determines when the lesson begins

ClosureTime

The end time of the last lesson to occur

You must own a license to this product to be able to use this in your experience. Please ensure you own this before progressing with setup.

here