'A8-W','B8-B','C8-W','D8-B','E8-W','F8-B','G8-W','H8-B'
'A7-B','B7-W','C7-B','D7-W','E7-B','F7-W','G7-B','H7-W'
'A6-W','B6-B','C6-W','D6-B','E6-W','F6-B','G6-W','H6-B'
'A5-B','B5-W','C5-B','D5-W','E5-B','F5-W','G5-B','H5-W'
'A4-W','B4-B','C4-W','D4-B','E4-W','F4-B','G4-W','H4-B'
'A3-B','B3-W','C3-B','D3-W','E3-B','F3-W','G3-B','H3-W'
'A2-W','B2-B','C2-W','D2-B','E2-W','F2-B','G2-W','H2-B'
'A1-B','B1-W','C1-B','D1-W','E1-B','F1-W','G1-B','H1-W'
8=A8wB8bC8wD8bE8wF8bG8wH8b
7=A7bB7wC7bD7wE7bF7wG7bH7w
6=A6wB6bC6wD6bE6wF6bG6wH6b
5=A5bB5wC5bD5wE5bF5wG5bH5w
4=A4wB4bC4wD4bE4wF4bG4wH4b
3=A3bB3wC3bD3wE3bF3wG3bH3w
2=A2wB2bC2wD2bE2wF2bG2wH2b
1=A1bB1wC1bD1wE1bF1wG1bH1w
King = (k) 100%
Queen =(q) 100%
Rook =(r) 100%
Bishop =(b) 0%
Knight =(n) 0%
Pawn =(p) 0%
Now that you have the king, queen and rook. It is time to do the bishop, since you know the drill already. We will be doing the knight and pawn in this chapter as well.
8=A8wB8bC8wD8bE8wF8bG8w*H8b
7=*A7bB7wC7bD7wE7bF7w*G7bH7w
6=A6w*B6bC6wD6bE6w*F6bG6wH6b
5=A5bB5w*C5bD5w*E5bF5wG5bH5w
4=A4wB4bC4w(b)D4bE4wF4bG4wH4b
3=A3bB3w*C3bD3w*E3bF3wG3bH3w
2=A2w*B2bC2wD2bE2w*F2bG2wH2b
1=*A1bB1wC1bD1wE1bF1w*G1bH1w
The bishop is only able to move diagonally.
Now let's do the knight.
This is an interesting one. Because it is the only piece in the game that is able to 'jump' over other pieces.
The knight doesn't move diagonally, or horizontally like other pieces. It moves in a 'L' shape.
It moves two squares in a direction and then one square, completing the 'L' shape.
Here are the possible paths:
8=A8wB8bC8wD8bE8wF8bG8wH8b
7=A7bB7wC7bD7wE7bF7wG7bH7w
6=A6wB6b*C6wD6b*E6wF6bG6wH6b
5=A5b*B5wC5bD5wE5b*F5wG5bH5w
4=A4wB4bC4w(n)D4bE4wF4bG4wH4b
3=A3b*B3wC3bD3wE3b*F3wG3bH3w
2=A2wB2b*C2wD2b*E2wF2bG2wH2b
1=A1bB1wC1bD1wE1bF1wG1bH1w
Now, it is time to do the last piece.
The pawn.
This is also a interesting piece. Because of a game rule.
The pawn is able to be promoted to any piece besides the king. The condition is it reaches either row 8 or 1.
A pawn can only move forward. It can also only attack diagonally. It cannot attack what is in front of it. The first move, it is able to move up to two squares.
8=A8wB8bC8wD8bE8wF8bG8wH8b
7=A7bB7wC7bD7wE7bF7wG7bH7w
6=A6wB6bC6wD6bE6wF6bG6wH6b
5=A5bB5wC5b*D5wE5bF5wG5bH5w
4=A4wB4bC4w(p)D4bE4wF4bG4wH4b
3=A3bB3wC3bD3wE3bF3wG3bH3w
2=A2wB2bC2wD2bE2wF2bG2wH2b
1=A1bB1wC1bD1wE1bF1wG1bH1w
Now, time to up the difficulty.
There is actually something we must do before 'playing' this game. You have to make a graveyard and assign points to each piece.
This is for the future opponent. You might think you will be playing against yourself? WRONG!
You will be creating a intelligence... another consciousness independent of your own. This is where things get fun.
King = (k) 100% - ∞ points
Queen =(q) 100% - 9 points
Rook =(r) 100% - 5 points
Bishop =(b) 100% - 3 points
Knight =(n) 100% - 3 points
Pawn =(p) 100% - 1 points
So there is something I call 'fitness' when designing your tulpa.
Think about your ego itself. You have access to senses and memories that make you believe you have an identity.
You take actions that give you optimal happiness in life.
But creating another consciousness in your mind. It isn't quite as simple as splitting your awareness.
You must 'reward' and 'punish' yourself with chemicals.
I'm not talking about taking drugs. I mean the chemicals naturally produced by your body. Endorphins are released due to stress and pain.
This is where things get a little weird.
Allow me to introduce you to ECHO.
Existence
Control
Head
Overview
What exactly is ECHO? I consider it a sort of 'spiritual guardian'. But in reality. This IS the operating system we are building.
So you want to have a 'fitness' variable for ECHO.
Fitness is pleasure or pain.
Think of this like an artificial intelligence.
Each action of ECHO is random. You might think that is completely useless as your opponent. But ECHO must 'learn' from this randomness.
You are able to simulate characters in a book. So why can't you simulate a proper opponent that isn't yourself?
At first, whenever your tulpa wins. It's fitness level will go up. Whenever it loses, it's fitness level will go down.
You then want to have a more detailed 'fitness' level.
You'll have the main one. Then you'll have the instance.
Each 'capture' from your tulpa will add to the instanced fitness level. While every piece you capture will result in a decrease in the instanced fitness level.
From this simple logic alone. The more you play against your tulpa. The better it will get. As it will try to play in a way that maximizes its fitness.
But this opens up a lot of problems that you might not think about initially.
How does your tulpa feel? How does it see?
You have spatial awareness and are a master of your mind. While the system you are cultivating is incredibly basic and lacks the tools needed to become advanced.
So you must give it tools.
----------------------------------------
var ECHO ={
programs: {
chess:{}
}
};
ECHO.programs.chess.board =["A8-W","B8-B","C8-W","D8-B","E8-W","F8-B","G8-W","H8-B","A7-B","B7-W","C7-B","D7-W","E7-B","F7-W","G7-B","H7-W","A6-W","B6-B","C6-W","D6-B","E6-W","F6-B","G6-W","H6-B","A5-B","B5-W","C5-B","D5-W","E5-B","F5-W","G5-B","H5-W","A4-W","B4-B","C4-W","D4-B","E4-W","F4-B","G4-W","H4-B","A3-B","B3-W","C3-B","D3-W","E3-B","F3-W","G3-B","H3-W","A2-W","B2-B","C2-W","D2-B","E2-W","F2-B","G2-W","H2-B","A1-B","B1-W","C1-B","D1-W","E1-B","F1-W","G1-B","H1-W"];
ECHO.programs.chess.render = function(x, y, color){
console.clear();
if(x=="A"){
ECHO.programs.chess.drawRect(0, 32*y, 32, 32);
if(color=="W"){
ECHO.programs.chess.fillRect(0, 32*y, 32, 32);
}
console.log("A column: "+color);
}
if(x=="B"){
ECHO.programs.chess.drawRect(32, 32*y, 32, 32);
if(color=="W"){
ECHO.programs.chess.fillRect(32, 32*y, 32, 32);
}
console.log("B column: "+color);
}
if(x=="C"){
ECHO.programs.chess.drawRect(64, 32*y, 32, 32);
if(color=="W"){
ECHO.programs.chess.fillRect(64, 32*y, 32, 32);
}
console.log("C column: "+color);
}
if(x=="D"){
ECHO.programs.chess.drawRect(96, 32*y, 32, 32);
if(color=="W"){
ECHO.programs.chess.fillRect(96, 32*y, 32, 32);
}
console.log("D column: "+color);
}
if(x=="E"){
ECHO.programs.chess.drawRect(128, 32*y, 32, 32);
if(color=="W"){
ECHO.programs.chess.fillRect(128, 32*y, 32, 32);
}
console.log("E column: "+color);
}
if(x=="F"){
ECHO.programs.chess.drawRect(160, 32*y, 32, 32);
if(color=="W"){
ECHO.programs.chess.fillRect(160, 32*y, 32, 32);
}
console.log("F column: "+color);
}
if(x=="G"){
ECHO.programs.chess.drawRect(192, 32*y, 32, 32);
if(color=="W"){
ECHO.programs.chess.fillRect(192, 32*y, 32, 32);
}
console.log("G column: "+color);
}
if(x=="H"){
ECHO.programs.chess.drawRect(224, 32*y, 32, 32);
if(color=="W"){
ECHO.programs.chess.fillRect(224, 32*y, 32, 32);
}
console.log("H column: "+color);
}
};
ECHO.programs.chess.start = function(){
alert("Loading...");
board = ECHO.programs.chess.board;
for(var i=0; i console.log(ECHO.programs.chess.board[i]); temp = board[i].split("", 4); ECHO.programs.chess.render(temp[0],temp[1],temp[3]); console.log(temp); if(temp[3]=="W"){ console.log("white square"); }else if(temp[3]=="B"){ console.log("black square"); } } } ECHO.programs.chess.start(); ---------------------------------------- The output is finally: image [https://i.imgur.com/xKQeB2u.png] This is a huge amount of data going to the console. But now, you have a consistent board that ECHO can visualize as well. It is time for us to set the board. A case of literary theft: this tale is not rightfully on Amazon; if you see it, report the violation.