
Interested in Modding?
College Architect is built within Unity Engine, and while we might have some level of control with DLL mods, we will be providing two different types of mods for our users upon the Early Access Launch. Our ordinary custom content mods can be PACKAGES or TXT files, where packages will be what contains everything in that mod, while other mods may require more extensive control and more features.
For that we utilize GEKO (what we call Gecko), which is a programming language that is compiled directly in through our engine, which is automatically antivirus scanned and then compiled directly into Unity.
When it comes to GEKO, we have a different syntax, that we call easy for beginners to comprehend, and also allow for more experienced and skilled programmers, such as yours truly.
1. Variables
A variable is like a named container or a named storage unit. With GEKO, you will assign variables with the following lines:
value = "Hello World"
To retrieve this value anywhere in your code, you will do the following, for instance if you want to print out this value.
Geko.Print(value)
You can simplify this line above by using a import statement, which will be what we talk about in the 2nd chapter.
2. Libraries
Geko has builtin libraries or modules that can be imported for your utilization. These libraries are directly embeded into the engine itself and aren’t manipulatable or configurable, however you may extend off from it and add your own features.
import Geko
import Collegeria
import Math
When utilizing Geko, you will be given the chance to utilize the following.
Geko Library
Print(...)
Warn(...)
Error(...)
Await( (...) => ... )
Yield( _ => ... )
TypeOf(...)
Cast<T>(...)
You will also get access to more libraries such as:
- String
- Number
- List
- Type Casting
Collegeria Library
You gain access to the following controls.
- Notification
- Pathfinding
- Job
- Task<T>
- Quest<T>
- Schedule
- Entity
- Material
- DayNightCycle
Math Library
You gain access to the following:
- Math.Sin(radians)
- Math.Cos(radians)
- Math.Tan(radians)
- Math.ASin(sin)
- Math.ACos(cos)
- Math.ATan(tan)
- Math.Log(base,value)
- Math.Ln(value)
- Math.Radians(degrees)
- Math.Degrees(radians)
- Math.Sec(radians)
- Math.Csc(radians)
- Math.Cot(radians)
- Math.Pi() — always returns PI 3.14159
- Math.E() — always returns E
- Math.Area(width,height)
- Math.Quad(a,b,c) — Quadratic Formula
- Math.Distance(vector,vector)
- Math.Abs(value)
- Math.Round(value)
- Math.Ceil(value)
- Math.Floor(value)
- Math.Add(a,b) — more advanced way of x + y
- Math.Sub(a,b) — more advanced way of x – y
- Math.Mul(a,b) — more advanced way of x * y
- Math.Div(a,b) — more advanced way of x / y
- Math.Exp(a,b) — more advanced way of x ^ y
- Math.Tet(a,b) — more advanced way of x ^^ y (Tetration)
- Math.Pen(a,b) — more advanced way of x ^^^ y (Pentation)
- Math.Mod() — more advanced way of x % y
Types
- Type.IsOf<T>(value)
- Type.Cast<T>(value)
- Type.As<T>(value)

