CodeCombat Documentation

repository·master·Indexed 27 days ago

https://github.com/codecombat/codecombat

An open-source multiplayer programming game for learning how to code. This documentation includes developer setup guides via the Archmage wiki, details on the partner API for SSO and user progress tracking, and comprehensive curriculum resources for AP CS Principles, including unit planning, assessment strategies for challenge levels, and guidance for the Explore and Create Performance Tasks.

Tokens
107K
Snippets
161
Records
643
Agent score
93%

What's inside CodeCombat

  1. Overview of Game Development 1 Course

    master

    The Game Development 1 course is a beginner-level curriculum designed to introduce students to game design and development. Students learn to use specific commands to design levels, culminating in a final project where they create a unique game.

    Course Structure:

    • Module 1: Spawnables and Mechanics (Levels 1-5): Spawning objects and defining mechanics.
    • Module 2: Goal Changes (Levels 6-11): Defining goals and types of spawnables.
    • Module 3: Changing Properties (Levels 12-16): Manipulating object properties.
    • Module 4: Final Project - Tabula Rasa (Level 17): Combining all course topics.

    Note: While written for Python, the concepts are adaptable for JavaScript.

  2. Overview of Game Development 1 Curriculum

    master

    The 'Game Development 1' course is an introductory level curriculum (4 x 55-minute sessions) designed to teach game design and development through classroom discussion and hands-on programming. Students learn specific commands by completing game levels and conclude with a final project where they design and create their own unique game.

    Curriculum Modules

    ModuleLevel RangeTopic
    1. Elements and Mechanisms1-5 ("Over the Garden Wall" to "Gems are Awesome")Spawning elements, game mechanisms
    2. Goal Adjustment6-11 ("Decapitate Mouse" to "Obstacle Magic")Goals, spawning element types
    3. Attribute Adjustment12-16 ("Forest Invasion" to "Survival Time")Object attributes
    4. Course Design - From Scratch17 ("From Scratch")Comprehensive application
  3. Overview of CodeCombat Arena Levels

    master

    Arena levels serve as course-end capstones where students develop an artificial intelligence program to solve a problem and compete against computer opponents and classmates. The levels are categorized by course and focus on specific programming concepts:

    | Arena | Course | Concepts | | :--- | :--- | : | | Wakka Maul | Introduction to Computer Science | Sequencing, syntax, strings, while True loops, variables | | Power Peak | Computer Science 2 | Functions, if statements, events, parameters | | Cross Bones | Computer Science 3 | Boolean logic, nested conditionals, arithmetic | | Summation Summit | Computer Science 4 | Arrays, while loops, for loops, objects |

  4. Overview of Web Development 1 Course

    master

    The Web Development 1 course is a beginner-level curriculum designed to introduce students to web development using HTML and CSS. The course is structured into five modules covering page setup, images, advanced page setup (divs and lists), styling (CSS), and a final creative project.

    Course Modules

    ModuleLevelsTopics
    1. Page Setup1-4Break tags, paragraph tags, heading tags
    2. Images5-6Image tags and size attributes
    3. Page Setup 27-9Div tags, unordered and ordered lists
    4. Page Style10-12Text-align, color, classes, IDs
    5. Final Project13All course topics combined
  5. Overview of Computer Science 2 Curriculum

    master

    The Computer Science 2 (CS2) course is designed for students who have completed 'Introduction to Computer Science'. It transitions students from basic coding to software and application development. The curriculum covers advanced concepts including conditional structures, functions, and events. While designed for Python, it is also applicable to JavaScript.

    Course Structure:

    • Duration: 4 x 45-60 minute coding sessions.
    • Key Topics:
      • Conditional structures (if, else, nested conditionals)
      • Functions
      • Events (listening for events and executing code)
      • Algorithm design and implementation (Multiplayer Arena review)
  6. Introduction to Computer Science Course Overview

    master

    This course is designed for beginners (3rd-grade level) to learn Python (or JavaScript) syntax and coding standards through practical application in a game environment. It consists of 4 sessions, each lasting 45-60 minutes.

    Course Modules

    ModuleLevelsLearning Objective
    1. Basic Syntax1-6Call functions in sequence
    2. Loops7-14Repeat code sequences
    3. Variables15-20Store and access data
    4. Review – Multiplayer Arena21Master syntax and sequential execution
  7. Curriculum Overview: Computer Science 2

    master

    The Computer Science 2 curriculum is designed for students who have completed 'Introduction to Computer Science'. It consists of six 45-60 minute coding sessions focused on transitioning from basic syntax to advanced programming concepts like conditionals, functions, and events.

    Key Learning Objectives:

    • Conditionals: Using if and else statements to perform actions based on the game state.
    • Functions: Organizing code into reusable logic blocks.
    • Events: Writing code that responds to specific occurrences (the basis for game and web development).
    • Advanced Fundamentals: Mastering arguments, strings, variables, and loops.

    Note: While designed for Python-language classrooms, the concepts can be adapted for JavaScript.

  8. Computer Science 3 Course Overview

    master

    Computer Science 3 (CS3) is an advanced coding course designed for students who have already mastered basic control flow (conditionals, functions, and events). The course focuses on enhancing conditional logic, introducing sophisticated operators, and exploring object-oriented programming concepts.

    Key Learning Objectives:

    • String Concatenation: Modifying text dynamically.
    • Computational Arithmetic: Using math within code to perform complex actions.
    • Object Properties: Accessing internal data of game objects (e.g., position, value).
    • Real-time Input: Using 'flags' to interact with programs during execution.
    • Functions with Return Values: Breaking down calculations into smaller, reusable parts.
    • Boolean Logic: Using compound conditionals with operators like equality, inequality, OR, and AND.
    • Relative Movement: Combining object properties and arithmetic to navigate to dynamic locations.
    • Loop Control: Using break and continue to manage while loops.

    Prerequisites: Computer Science 2. Format: 11 sessions of 45-60 minutes each. Language Note: While written with Python in mind, these concepts are applicable to JavaScript.

  9. Esports Bootcamp: AI League Curriculum Overview

    master

    The AI League Esports Bootcamp is a beginner-level curriculum designed for 3 x 45-60 minute coding sessions. It introduces students to formal syntax and typing code using real programming languages (Python or JavaScript) rather than block-based visual programming. The curriculum is structured into three modules:

    1. Basic Syntax (Levels 1-6): Focuses on calling methods in order, with and without arguments.
    2. Loops (Levels 7-9): Focuses on repeating code sequences.
    3. Enter the Arena (Level 11): Focuses on applying coding skills to compete in an AI League arena.