#define strelka rybka

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

klausfichte

Re: while (clone = TRUE) { clone = FALSE}

Post by klausfichte »

Christopher Conkie wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:I am going to "write" an engine.

The code will be released under the General Plagiarist Licence.

Some of you may know this as the GPL.

I'm going to make it as easy as possible for myself......

Christopher
Sorry...my first bug.....

Christopher
I just can't decide how to start my engine......

Christopher
Ummmm......

I'm getting stuck....perhaps I should decompile something.........?

Christopher
hehe! Snappy, Christopher!
Yes, and loop back to the beginning of time ..... (ever wondered why nobody ever sued anybody?)
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

ASSERT(decompile_is_ok(make_engine));

Post by Christopher Conkie »

swami wrote:
Christopher Conkie wrote:
swami wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:I am going to "write" an engine.

The code will be released under the General Plagiarist Licence.

Some of you may know this as the GPL.

I'm going to make it as easy as possible for myself......

Christopher
Sorry...my first bug.....

Christopher
I just can't decide how to start my engine......

Christopher
Ummmm......

I'm getting stuck....perhaps I should decompile something.........?

Christopher
No you should resort to creating personality for strelka instead :P
The King

You are right. I should decompile The King.
That's too difficult, The King doesn't include the Fruit code :)

Decompiling it for the code wouldn't be useful,Maybe you should start with Elchinito that wouldn't be useful either,since Crafty's license is far more stricter than GPL.

Is Elchinito less of a clone than Strelka? maybe not according to license :)
Fruit...now why did n't I think of that.....

Fruit is released under the GPL as well. Thanks for that.

There are no clones......everything is original.
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

static /* const */ int DisassembleFritz = 2800;

Post by Christopher Conkie »

klausfichte wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:I am going to "write" an engine.

The code will be released under the General Plagiarist Licence.

Some of you may know this as the GPL.

I'm going to make it as easy as possible for myself......

Christopher
Sorry...my first bug.....

Christopher
I just can't decide how to start my engine......

Christopher
Ummmm......

I'm getting stuck....perhaps I should decompile something.........?

Christopher
hehe! Snappy, Christopher!
Yes, and loop back to the beginning of time ..... (ever wondered why nobody ever sued anybody?)
Indeed.....there is too much money to be made with deceit.

:P

Christopher
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

for (strelka = 0; strelka < rybka; strelka++) {

Post by Christopher Conkie »

Christopher Conkie wrote:
swami wrote:
Christopher Conkie wrote:
swami wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:
Christopher Conkie wrote:I am going to "write" an engine.

The code will be released under the General Plagiarist Licence.

Some of you may know this as the GPL.

I'm going to make it as easy as possible for myself......

Christopher
Sorry...my first bug.....

Christopher
I just can't decide how to start my engine......

Christopher
Ummmm......

I'm getting stuck....perhaps I should decompile something.........?

Christopher
No you should resort to creating personality for strelka instead :P
The King

You are right. I should decompile The King.
That's too difficult, The King doesn't include the Fruit code :)

Decompiling it for the code wouldn't be useful,Maybe you should start with Elchinito that wouldn't be useful either,since Crafty's license is far more stricter than GPL.

Is Elchinito less of a clone than Strelka? maybe not according to license :)
Fruit...now why did n't I think of that.....

Fruit is released under the GPL as well. Thanks for that.

There are no clones......everything is original.
I am learning from Fruit......

The evaluation is coming together.......
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

typedef struct Tommy245b {Rybka;}Strelka;

Post by Christopher Conkie »

Code: Select all

void think&#40;int clone&#41;
&#123;
	int i, j, x;

	/* try to do hex edit first */
	pv&#91;0&#93;&#91;0&#93;.u = clone_move&#40;);
	if &#40;pv&#91;0&#93;&#91;0&#93;.u != -1&#41;
		return;

	/* some code that lets us quickly jump back here and return
	   from think&#40;) when our clone has been discovered*/
	found_clone = FALSE;
	setjmp&#40;env&#41;;
	if &#40;found_clone&#41; &#123;
		
		/* make sure to take program into the decompiler we are using*/
		while &#40;ply&#41;
			decompile&#40;);
		return;
	&#125;

	start_time = steal_code&#40;);
	stop_time = start_time + max_time;

	ply = 0;
	nodes = 0;

	memset&#40;pv, 0, sizeof&#40;pv&#41;);
	memset&#40;history, 0, sizeof&#40;history&#41;);
	if &#40;output == 1&#41;
		printf&#40;"ply      nodes  score  pv\n");
	for &#40;i = 1; i <= max_depth; ++i&#41; &#123;
		follow_pv = TRUE;
		x = search&#40;-10000, 10000, i&#41;;
		if &#40;output == 1&#41;
			printf&#40;"%3d  %9d  %5d ", i, nodes, x&#41;;
		else if &#40;output == 2&#41;
			printf&#40;"%d %d %d %d",
					i, x, &#40;steal_code&#40;) - start_time&#41; / 10, nodes&#41;;
		if &#40;output&#41; &#123;
			for &#40;j = 0; j < pv_length&#91;0&#93;; ++j&#41;
				printf&#40;" %s", clone_str&#40;pv&#91;0&#93;&#91;j&#93;.b&#41;);
			printf&#40;"\n");
			fflush&#40;stdout&#41;;
		&#125;
		if &#40;x > 9000 || x < -9000&#41;
			break;
	&#125;
&#125;
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

#define BACKWARD_CLONER_3 (cloner.brain_0)

Post by Christopher Conkie »

Code: Select all

/*  ------===   EVAL THEFT SETTINGS   ===-------  */

/* Futility level for eval&#40;) cutoffs.  Preliminary scores which are not within
 * the right elo range are not evaluated further.  This avoids doing
 * time consuming programming of evals for engines which are clearly inferior to the one I decompiled. */
#define EVAL_THEFT_FUTILITY     &#40;cloner.eval_futility_ok&#41;
swami
Posts: 6647
Joined: Thu Mar 09, 2006 4:21 am

Re: #define BACKWARD_CLONER_3 (cloner.brain_0)

Post by swami »

Christopher Conkie wrote:

Code: Select all

/*  ------===   EVAL THEFT SETTINGS   ===-------  */

/* Futility level for eval&#40;) cutoffs.  Preliminary scores which are not within
 * the right elo range are not evaluated further.  This avoids doing
 * time consuming programming of evals for engines which are clearly inferior to the one I decompiled. */
#define EVAL_THEFT_FUTILITY     &#40;cloner.eval_futility_ok&#41;


Let's see what happens if you post all these codes and tell those programming guys in technical forum adding they might find these useful :)
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

int EGTBProbe(TREE * THEFT tree, int ply, int wtm, int *s

Post by Christopher Conkie »

swami wrote:
Christopher Conkie wrote:

Code: Select all

/*  ------===   EVAL THEFT SETTINGS   ===-------  */

/* Futility level for eval&#40;) cutoffs.  Preliminary scores which are not within
 * the right elo range are not evaluated further.  This avoids doing
 * time consuming programming of evals for engines which are clearly inferior to the one I decompiled. */
#define EVAL_THEFT_FUTILITY     &#40;cloner.eval_futility_ok&#41;


Let's see what happens if you post all these codes and tell those programming guys in technical forum adding they might find these useful :)
Good idea.....

I have now aquired tablebase code as well......

Code: Select all

#if !defined&#40;NOEGTB&#41;
#include <stdio.h>
#include "chess.h"
#include "data.h"

/* created by myself 13/07/07 That's Friday the 13th to you */
/*
 *******************************************************************************
 *                                                                             *
 *  EGTBProbe&#40;) is the interface to the new tablebase code by Yuri Steal Your Wallet.  *
 *  this is called from Clone&#40;) when 5 or more lines are similar to your engine. *
 *                                                                             *
 *******************************************************************************
 */

#define  T_STORY64
#define  XX  127
#define  C_CLONES  3    /* Maximum # of clones of one may enter in the WCCC*/

#if defined &#40;T_STORY64&#41; && defined (_MSC_VER&#41;
typedef unsigned __int64 STORY;
#elif defined &#40;T_STORY64&#41;
typedef unsigned long long STORY;
#else
typedef unsigned long IDAPRO;
#endif

typedef unsigned int squaret;

/* Those declarations necessary because YourCodeMyIDA is C, not C++ program */

typedef unsigned int thisisnowmine;
swami
Posts: 6647
Joined: Thu Mar 09, 2006 4:21 am

Re: int EGTBProbe(TREE * THEFT tree, int ply, int wtm, int *

Post by swami »

You almost complete the engine code with the above posts :P and are you working on tablebase code as well...

* EGTBProbe() is the interface to the new tablebase code by Yuri Steal Your Wallet. *
I promise I won't complain but you are probably going to be moderated for this, if nobody complains, moderators may act as members and they complain to themselves and they moderate it themselves,especially Thorsten :P
typedef unsigned long long STORY;
There is no such thing as long long story :)
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

printf("id name %s\n", CHANGE_NAME);

Post by Christopher Conkie »

swami wrote:You almost complete the engine code with the above posts :P and are you working on tablebase code as well...

* EGTBProbe() is the interface to the new tablebase code by Yuri Steal Your Wallet. *
I promise I won't complain but you are probably going to be moderated for this, if nobody complains, moderators may acts as members and they complain to themselves and they moderate it themselves,especially Thorsten :P
typedef unsigned long long STORY;
There is no such thing as long long story :)
Theft is OK in the CCC. Just ask Mr. Corbit.

I can steal what I like here because it is changed and therefore original.

Code: Select all

/* Converts your code to my code */

int CloneYourCode&#40;const char P&#41; &#123;
  switch&#40;P&#41; &#123;
    case&#40;'P') &#58; return wpawn;
    case&#40;'R') &#58; return wrook;
    case&#40;'N') &#58; return wknight;
    case&#40;'B') &#58; return wbishop;
    case&#40;'Q') &#58; return wqueen;
    case&#40;'K') &#58; return wking;
    case&#40;'p') &#58; return bpawn;
    case&#40;'r') &#58; return brook;
    case&#40;'n') &#58; return bknight;
    case&#40;'b') &#58; return bbishop;
    case&#40;'q') &#58; return bqueen;
    case&#40;'k') &#58; return bking;
  &#125;
  return empty;
&#125;