Skip to content

connorsavage/SussyScript

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hello crewmates! We have some new tasks that we need to complete before the imposters get to us! These tasks requires the crew to do programming; fortunately, the admins just installed SussyScript to help with creating these sussy programs! SussyScript tasks should be easy to follow but also fun! Let's get to work so we can find out who is faking their tasks...

SussyScript is a static and weakly typed coding language inspired by the popular party game Among Us! SussyScript takes influence from the coding conventions of JavaScript and Python, aimed to introduce coding to crewmates (and also beginner coders familiar with Among Us). Being a language targeted for beginners, SussyScript allows users to learn the basic functions of coding, such as looping and expression creation, with terms and keywords that allude to mechanics in Among Us!

Written by Mitchell Cootauco, Sebastian Cruz, Erin Hurlburt, and Connor Savage

Imposterous Features:

  • Mix of Python & Javascript: No parenthesis in if/while/for statements, but does have brackets
  • Among Us-themed language and syntax
  • Everything is natively private
  • Static and weakly typed
  • letus/constus can be used for type inference
  • String interpolation
  • Suspicious but detailed error messages

Example Tasks

Printing

JavaScriptSussyScript
console.log(“Hello world!)
report “Hello world!”

Assigning variables

JavaScriptSussyScript
let x = 0
const y = 1
letus x = 0
constus x = 0

if-statements

JavaScriptSussyScript
if (x < 10) {
  return 1;
} else if (x < 20) {
  return -1;
} else {
  return 0;
}
sus x < 10 {
  vote 1
} mega sus x < 20 {
  vote -1
} mega {
  vote 0
} 

Function Declarations

JavaScriptSussyScript
function evenOrOdd(x){
    return x %  2 ==  0
}
task evenOrOdd(x) {
    vote x % 2 == 0
}
JavaScriptSussyScript
function add(a, b){
    return a + b;
}
task add(a, b) { 
   vote a + b
}

Loops

JavaScriptSussyScript
while(true){
    break
}
during crewmate {
    eject
}
JavaScriptSussyScript
for (var x = 0; x < 3; x++) {
    break
}
scan varus in 0 till 3 {
    eject
}

Comments

JavaScriptSussyScript
// insert sussy comment
cR insert sussy comment

Types of Semantic Errors

  • Declaring a variable that has already been declared
  • Return outside of a function
  • Non-boolean value in conditional
  • Non-boolean value in while loop
  • Incorrect number of function parameters
  • Incompaible type comparison
  • Repeating and For loop with something other than integer value assigned
  • Differen types in ternary conditional return
  • "And"/"Or" conditionals not having boolean values
  • Break outside of loops
  • Calling a function or method that is not initialized
  • Use of non-initialized variables

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published