Skip to content
ochadenas edited this page Oct 29, 2023 · 17 revisions

The Accumulator

The ACC chip takes two numbers and combines them. That means, it swallows the first attacker, waits for a second one, and then performs its action. You will notice that the chip changes to an "activated" state. It doesn't matter whether the two numbers come in on the same path or through two different links.

Unlike other chips, the accumulator can only be upgraded twice. The operation performed depends on the upgrade.

Addition

In its basic state, the ACC adds the two numbers, yielding the sum of the two input values. This is denoted by the symbol + in the ACC chip.

graph LR;
    none1( )
    none2( )
    acc(ACC +)
    none3( ) 

    none1--1101-->acc--10011-->none3
    none2--0110-->acc

    classDef acc stroke:#FFEB3B,stroke-width:4px;
    class acc acc
    classDef none stroke:#07DD00,stroke-width:0px;
    class none1,none2,none3 none
Loading

Bitwise OR

After the first upgrade, the ACC performs a bitwise OR operation. The digits of the two numbers are compared bit-to-bit (starting from the right); if one of them is 1, then the resulting bit is 1.

The result is never greater than the sum of the two numbers. In the best case, it is equal to the greater of the two.

The ACC chip shows the symbol v (from Latin vel, "or").

graph LR;
    none1( )
    none2( )
    acc(ACC v)
    none3( ) 

    none1--1101-->acc--1111-->none3
    none2--0110-->acc

    classDef acc stroke:#FFEB3B,stroke-width:4px;
    class acc acc
    classDef none stroke:#07DD00,stroke-width:0px;
    class none1,none2,none3 none
Loading

Bitwise AND

The second upgrade changes the ACC operation into bitwise AND operation. The resulting digit is 0 if any of the two input bits are 0.

In the worst case, the result is equal to the lesser of the two numbers. In the best case, it is zero.

The ACC chip shows the symbol &.

graph LR;
    none1( )
    none2( )
    acc(ACC &)
    none3( ) 

    none1--1101-->acc--0100-->none3
    none2--0110-->acc

    classDef acc stroke:#FFEB3B,stroke-width:4px;
    class acc acc
    classDef none stroke:#07DD00,stroke-width:0px;
    class none1,none2,none3 none
Loading

Examples

x0E and x06

Hex Binary Decimal
x0E 1110 14
x06 0110 6
x0E + x06 x14 0001 0100 20
x0E v x06 x0E 1110 14
x0E & x06 x06 0110 6

x3A and x43

Hex Binary Decimal
x3A 0011 1010 58
x43 0100 0011 67
x3A + x43 x7D 0111 1101 125
x3A v x43 x7B 0111 1011 123
x3A & x43 x02 0000 0010 2

Hints and remarks

The main purpose of ACC is to reduce the attacker's frequency; in fact, it takes out one out of two attackers. On the downside, the resulting number may be stronger than before. At least in the basic variant.

After the 2nd upgrade, in the & version, ACC massively reduces the strength of the attackers, making it a very strong chip. It has two drawbacks:

  • The base price of ACC goes up if there are already other chips of the same type, and
  • Cryptocoins are completey unaffected by ACC.

Note that the operation is executed in the moment when the second attacker enters the chip. That means, if you upgrade the ACC chip while it is in activated state, the operation will already benefit from the upgrade.

Chip Defense

Main Page

Game Play

Concepts


Developer documentation

Clone this wiki locally