Src:Card
Src:Card Rulebook
Table of Contents
Table of Contents
Intro to Programming
Code is just a list of instructions that happen step-by-step. Robots are just like a very obedient dog that accepts every instruction you give them. Programs are the instructions you give a Robot. Each line of code is an instruction.
Instructions tell the Robot what to do in a step-by-step order. The only exception are instructions that change the direction of the code. These are branch instructions which allow a robot to decide between two instructions, a loop which allows instructions to repeat and conditional instructions (execute card if... in Src:Card) which only execute if certain conditions are true. And that's coding :)
Game Types
There are three different types of game. Begin by learning and playing the Basic game.
- BASIC: Robots do not change during play. No Branch or Execute Code If... cards.
- INTERMEDIATE: Robots do change during play.
- MASTER (SIFU): Add green virus cards.
Playing The Basic Game
The first step in the basic game is to set-up your Robot. Each player is given a Primary Core and one Perimeter Connector. Next, the remaining yellow network cards are shuffled and each player is given five additional random network cards. It is the task of each player to now build his Robot, before play begins.
Building Your Robot
It is time to build your Robot's central brain. Once an opponent reaches your Primary Core, your Robot is defeated. The goal of building your Robot is to prevent your opponent from reaching your Primary Core, which is the root of your Robot.
You will utilize Defense Cores & Chains※, Fortified Connectors※ and Perimeter Connectors※ to shield your Primary Core.
Every time you add a new Network card it must be above the Primary Core. At no time can you rearrange Network cards. You may add a new Network Card above or below any already positioned Defense Core, Defense Core Chain, or Connector (Defense Cores can be added to chains). The only exception to this rule is that between every successive vertical Defense Core, there must be at least one Perimeter Connector between them.
Network Spaces must have Perimeter Connectors between vertical Defense Cores & Chains, as left. (The page shows two example stacks: the left stack, marked with a check, places a Perimeter Connector between each pair of vertical Defense Cores; the right stack, marked with a cross, has two Defense Cores with no Perimeter Connector between them.)
Defense Cores can also be chained. To learn more about this technique see Defense Core Chain※ in the auxiliary.
Writing Code
Now you will need to write code to defeat your opponent's Robot. You will place code cards to create a sequential program. Code cards come in two varieties. The blue Function Cards are specific instructions that perform a single activity (such as defeat a certain number of hardware points or crossing a connector element). Red Structure Cards allow you to shape your code. In the basic game we will only be using the red Loop※ cards. Loop cards allow for single cards or groups of cards to be executed repeatedly (see the Auxiliary for more).
You can place code cards in any order as the game progresses (but you can not reorder already placed cards). Your code will always execute from top to bottom. The first statement card in your code will execute against the first robot network card in your opponent's network (the card that is furthest above his/her Primary Core). The second card in your code will still execute against the first network card in your opponent's robot and so on, until that card is defeated.
Remember, when coding, each line of your code is attempting to defeat the currently undefeated element of your opponent's Robot. For example, if your first five lines of code defeat (or cross) the first two elements of your opponent's network, then your sixth card is attempting to defeat the third element of your opponent's network.
Your Code striking its way through opponent's Robot. (The page shows a green arrow running down a column of Function and Structure cards, and a dark arrow running down the opponent's network from top to bottom.)
Only when a card (or chain) is defeated does your next line of code begin to execute against your opponent's following network code card. In this manner your code is executed until you reach the Primary Core. The function of each code card is covered in the Auxiliary.
Indenting
Indenting (or placing in parallel in the intermediate game) a card or group of cards beneath a red structure card indicates that the card or group is controlled by the red structure card that is directly above. The red structure card will determine if the code indented below it executes or how many times the code executes. When a new card is placed, the indentation of ANY card may be changed. Red cards may be nested under each other.
Figure labels: "indented and parallel code", "indented", "parallel".
Battle Coding (Turns)
Before play, shuffle all of the blue cards and all of the red loop cards into one draw pile. Draw five cards each before play begins.
Each player begins a turn by drawing two cards from the deck. At this point the player has the option to complete their turn in one of two ways:
- The player can make up to three actions. An action consists of playing a single card into your code (or network, if intermediate game) or discarding a single card. A player does not have to take an action. They may make zero, one, two or three actions.
- Otherwise, a player may decide to "Purge"※ his/her hand after drawing two cards, but before making any actions. "Purging" your hand requires the player to discard all of the cards in their hand. If a player "Purges" his/her hand, their turn finishes immediately.
If a player begins a turn with no cards in their hand, they must draw five cards (instead of two) and choose between the above two options as per normal.
Winning The Game
Defeat your opponent by completing code that travels from his/her outermost robot defense (Yellow Network Card) to the Primary Core※. The code cards (Blue Function Cards & Red Structure Cards) you play perform functions that attempt to cross your opponent's robot space, starting with the robot card furthest from your opponent's Primary Core. When a player believes their code crosses each of their opponent's network defenses, reaching the opponent's Primary Core, the player declares victory. Examine the code for errors. If there are no errors, the player has won. If Errors※ exist, continue play, missing the next turn.
Playing The Intermediate Game
Once you have mastered the Basic game, begin the more dynamic Intermediate game. Add all of the red structure cards into the draw pile. Also shuffle in the yellow cards that remain after creating the Robots.
You may now play the yellow cards in your hand, adding them to your Robot, changing it as you play. In this manner, your opponent will need to anticipate changes to your Robot by using the Branch※ and Execute Code If...※ cards. The remainder of play is identical to the Basic Game.
Playing The Master (Sifu) Game
In the Master game, add the Bug cards to the deck. Bugs (green) are not code, but can be played during a turn (as an action) to attack your opponent or protect your network. The Virus※ cards can be played against your opponent to cripple a Defense Core (or Chain). A virus detected card can remove bugs. A Power Surge causes a missed turn. Memory Leak causes your opponent to drop half of his/her cards (rounded down). Steal Memory allows you to steal two random cards from your opponent. Bug cards are tossed in the discard pile once played (except active viruses).
Src:Card Auxiliary
The Src:Card Auxiliary contains definitions of concepts and objects found in Src:Card. It is recommended that you read this section and refer back to it when necessary.
A. Attack Cards
Attack Cards include the Signal Jamming Attack, Radiation Attack and Laser Pulse Attack. When placed in your code, these attacks will defeat a Core/Chain with just that one card (if a Defense Core Chain has a weakness for that attack and it has not been made impervious). Since an attack can be blocked (if your opponent makes his/her Defense Core chain impervious) it is important to protect your attacks from causing errors using the Execute Code If... cards when possible.
- Laser Pulse Attack: Launch a Laser Pulse Attack against a Defense Core. This function causes a fatal error if an attack is not allowed.
- Radiation Attack: Launch a Radiation Attack against a Defense Core. This function causes a fatal error if an attack is not allowed.
- Signal Jamming Attack: Launch a Signal Jamming Attack against a Defense Core. This function causes a fatal error if an attack is not allowed.
B. Branch Cards
The most complex structure card is the Branch card. The Branch card allows two possible directions for code to execute given the current position of your code in of your opponent's robot network. If the opponent's robot network card at the time of executing the branch is a Defense Core, then the code indented below the branch card will execute. If the network card at the time of execution is not a Defense Core, then execute the code below the Branch in parallel.
- Branch card text: If the current position is a Defense Core, execute code indented below the card. Else, execute the code in parallel below.
Code that is indented is executed if your current position in your opponent's robot is a Defense Core. Otherwise, the code that is in parallel is executed. After either branch is executed the non-indented code below the branch is executed.
C. Cross Connector
A Cross Connector allows you to simply travel across a connector (Fortified or Perimeter) in your opponent's robot network. For each connector your opponent has, you will need a cross connector card (unless you use a single card repeatedly, such as in a loop).
- Cross Connector card text: Travel through one connector (Fortified or Perimeter). This function causes a fatal error if there is no connector to traverse.
D. Defeat 2 Hardware / Security Cards
The two most important blue coding cards are the Defeat 2 Hardware Levels card and the Defeat 2 Security Levels card. Each of these cards can defeat two levels of an opponent's Defense Core hardware or security attribute. For example, if an opponent has a total of 7 for its hardware level on a Defense Core Chain, then you would need four Defeat 2 Hardware Levels cards to defeat that chain and move on to the next element in your opponent's network.
- Defeat 2 Hardware Levels card text: Defeat 0, 1 or 2 levels of Hardware depending on the remaining levels of a targeted Defense Core.
- Defeat 2 Security Levels card text: Defeat 0, 1 or 2 levels of Security depending on the remaining levels of a targeted Defense Core.
Defense Core Cards
Defense Core cards have a hardware value, a security value and an operating system. The greater the hardware and security value is, the harder it is for your opponent to breach (travel through) this element. You can increase the value of a Defense Core by adding more Defense Cores in a Defense Core Chain※. The operating system indicates which viruses the Defense Core is vulnerable to. Each operating system has viruses that it is weakened against (see the rules for Master (Sifu) Game).
The Defense Core may also have an attack that it is vulnerable to. This means that an attack card, if used by an opponent, can destroy the entire Defense Core Chain with a single card. An example is the Signal Jamming Attack card. If an opponent used a Signal Jamming Attack against a Defense Core or Chain (even if there are other cards in the left-to-right Defense Core chain) the entire chain would be beaten (if not impervious).
Defense Core (Impervious) Cards
When the Defense Core (Impervious) card is played by itself or as part of a chain, it makes the entire left-to-right Defense Core Chain resistant to attacks (Signal Jamming Attack, Radiation Attack, Laser Pulse Attack). When played, your opponent can only attack that Defense Core Chain using attribute-based strikes and viruses, not direct attacks.
- Defense Core (Impervious) card text: A system security device (can be chained). Makes all elements in this chain Impervious to Attacks (strengthens all weaknesses).
Defense Core Chain
Defense Cores can be added in a chain, left to right at any time (and vertically at the very ends, to save space). Adding more Defense Cores to the right of already placed Defense Cores allows an accumulation of Defense Core attributes.
The more cards you add to a left-to-right chain, the greater your hardware and security levels, but greater also, the types of attacks that chain is vulnerable to and the types of operating systems present (and the vulnerability of each operating system's virus weakness in Master (Sifu) Game). Adding more cards is a trade off between stronger hardware/security attributes and more vulnerabilities.
E. Empty Structure Card
An indented and/or parallel section of a Branch card may be empty. In this case execution would continue below the empty Branch at the non-indented code (The same is true for an Execute Code If... and Loop card). If no cards are indented below them, continue execution at the first non-indented card below them. In the case of an empty Loop, the non-indented cards beneath are not repeated. In the case of an empty Execute Code If... card, the non-indented code underneath is executed.
Errors
An error occurs when a piece of code attempts to execute in a manner not allowed by the rules or card. One example would be a Cross Connector card attempting to perform an action upon a Defense Core. Another example would be an Execute Code If... card executing on a Connector. Yet another error would be attempting to perform any action on the Primary Core (such as using a Cross Connector).
In order to declare victory, your code must have no errors. During play, errors are fine, as the ever changing battlefield may eliminate that error before you later claim victory.
Execute Code If... Cards
The Execute Code If... card is a simple but powerful structure card that can be used against Defense Cores. An Execute Code If... card does one of two things. If there is a Defense Core or Chain in the current position in your opponent's network AND it allows attacks then execute the code indented below this card. If the current card you are executing code against in your opponent's network does not allow attacks (a Defense Core Chain that is invulnerable or without weakness) then do not execute the code indented below this card (begin executing the first non-indented code following this card). This Execute Code If... card allows you to protect attack cards that might create errors. It is an excellent card to protect attacks (Signal Jamming Attack, Radiation Attack, Laser Pulse Attack) in your code.
To the left, the code will follow the order: Execute Code If... card, card 2, card 3 (if attacks are allowed at the position the red card is executed) or Execute Code If... card, card 3 (if the current element of your opponent's network does not allow attacks) skipping the indented code.
F. Fortified Connectors
Fortified Connectors are connectors that can be placed anywhere vertically in your robot (above the Primary Core). Fortified Connectors protect all Defense Cores and Chains in the Robot, with a specific Operating System, from Virus attacks.
L. Loop
These structure cards change the way your code flows. For example, a Loop card will cause the code indented below it to execute the number of times that the Loop loops.
The Loop to the left executes 3 times. The code in the image to the left will execute the first card once. The red Loop structure card indicates that the code indented below that card will execute 3 times. Therefore the third card executes three times, before the fourth card executes once.
The Loop could have a group of cards beneath it which would also execute three times. The entire group indented below a Loop executes the number of times the Loop does. The Loop could have another Loop "nested" (bottom left) in it. This nested Loop would execute the number of times the card indicates and the entire block, including the nested Loop, would execute the number of times the outer Loop defined. You can "nest" Loops inside of Loops as much as you wish.
N. Network
The Robot's Network is the area where you place Network/Robot (yellow) cards that comprise your Robot's core/brain.
P. Perimeter Connectors and Primary Core
Perimeter Connectors: A Perimeter Connector must be present between each Defense Core/Chain.
Primary Core: The Primary Core is the heart of your Robot. Once exposed your Robot is defeated. You do not need to perform any action upon the Primary Core (and indeed cannot). Simply reaching this delicate heart of the machine causes catastrophic failure. Guard your Core at all costs.
Purge
After drawing two cards, instead of performing up to three actions, you may immediately discard your entire hand. Doing a "Purge" allows you to draw five new cards on your next turn.
V. Viruses
Viruses are a great way to reduce the defense attributes of a Defense Core or Defense Core Chain. Certain Operating Systems (but not all) are vulnerable to Viruses. Place the Virus card next to the opponents Defense Core or Chain you wish to impact. An opponent can remove the Virus with the Virus Detected card.
- JabcOS Virus: Play card next to Defense Core chain with at least one JabcOS OS. Not applicable if chain is invulnerable. Halves Hardware Level.
- AnniOS Virus: Play card next to Defense Core chain with at least one AnniOS OS. Not applicable if chain is invulnerable. Halves Hardware Level.
- AleOS Virus: Play card next to Defense Core chain with at least one AleOS OS. Not applicable if chain is invulnerable. Halves Security Level.
- UnovOS Virus: Play card next to Defense Core chain with at least one UnovOS OS. Not applicable if chain is invulnerable. Halves Security Level.