Saturday 29 June 2013

In Windows 7 Working Java Program/Project/source code for Snakes and Ladders Game with Rules


Are You Looking Source Code or a Working Java Program for Snakes and Ladders Game.
Then Here is the Java Project for  Snakes and Ladders Game.

Scroll down for code/Java Program. Copy the Code and Paste it and Just simply run the code in java Platform.

       Rules for Snakes and Ladders Game

Snakes and Ladders is a board game usually played by children. The Hasbro version, called Chutes and Ladders, shows children making various decisions, then the consequences of that action. Good actions allow the player to climb a ladder and get closer to the finish, while bad decisions make the player slide down a chute, which takes him farther from the finish

Players
  • Snakes and Ladders is played by two to four players, each with her own token to move around the board.

Moving

  • Players roll a die or spin a spinner, then move the designated number of spaces, between one and six. Once they land on a space, they have to perform any action designated by the space.
  • If the space a player lands on is at the bottom of a ladder, he should climb the ladder, which brings him to a space higher on the board.

Snakes/Chutes

  • If the space a player lands on is at the top of a snake/chute, she must slide down to the bottom of it, landing on a space closer to the beginning.

Winning

  • The winner is the player who gets to the last space on the board first, whether by landing on it from a roll, or by reaching it with a ladder.
    Working Java Program/Project/source code for Snakes and Ladders Game.

#include
#include
#include
#include
#include
#include
#include
int k=1, i, user=0, dice=0, x1=50, y1=410, x2=70, y2=410, dir1=0,
dir2=0,
ch;
int cnt1=1, cnt2=1;
void *obj1, *obj2, *o1, *o2, *dot, *back, *turn, *ready;
unsigned int size;
void ladder1()
{
            int m,n;
            for(m=0;m<=250;m+=250)
            for(n=0;n<=m;n+=250)
            {
                        setcolor(DARKGRAY);
                        line(53+m,57+n,55+m,55+n);
                        line(53+m,57+n,133+m,137+n);
                        line(55+m,55+n,135+m,135+n);
                        line(133+m,137+n,135+m,135+n);
                        setfillstyle(SOLID_FILL, YELLOW);
                        floodfill(55+m,58+n,DARKGRAY);
                        line(68+m,42+n,70+m,40+n);
                        line(68+m,42+n,148+m,122+n);
                        line(70+m,40+n,150+m,120+n);
                        line(148+m,122+n,150+m,120+n);
                        floodfill(70+m,43+n,DARKGRAY);
                        line(65+m,65+n,78+m,52+n);
                        line(68+m,68+n,81+m,55+n);
                        floodfill(79+m,54+n,DARKGRAY);
                        line(75+m,75+n,88+m,62+n);
                        line(78+m,78+n,91+m,65+n);
                        floodfill(89+m,64+n,DARKGRAY);
                        line(85+m,85+n,98+m,72+n);
                        line(88+m,88+n,101+m,75+n);
                        floodfill(99+m,74+n,DARKGRAY);
                        line(95+m,95+n,108+m,82+n);
                        line(98+m,98+n,111+m,85+n);
                        floodfill(109+m,84+n,DARKGRAY);
                        line(105+m,105+n,118+m,92+n);
                        line(108+m,108+n,121+m,95+n);
                        floodfill(119+m,94+n,DARKGRAY);
                        line(115+m,115+n,128+m,102+n);
                        line(118+m,118+n,131+m,105+n);
                        floodfill(129+m,104+n,DARKGRAY);
                        line(125+m,125+n,138+m,112+n);
                        line(128+m,128+n,141+m,115+n);
                        floodfill(139+m,114+n,DARKGRAY);
            }
}
void ladder2()
{
            int p,q=0;
            for(p=0;p<=180;p+=155)
            {
                        line(100+p,330-q,140+p,290-q);
                        line(100+p,330-q,102+p,332-q);
                        line(102+p,332-q,142+p,292-q);
                        line(142+p,292-q,140+p,290-q);
                        floodfill(141+p,292-q,8);
                        line(115+p,345-q,155+p,305-q);
                        line(115+p,345-q,117+p,347-q);
                        line(117+p,347-q,157+p,307-q);
                        line(157+p,307-q,155+p,305-q);
                        floodfill(155+p,307-q,8);
                        line(112+p,322-q,125+p,335-q);
                        line(114+p,320-q,127+p,333-q);
                        floodfill(125+p,334-q,8);
                        line(122+p,312-q,135+p,325-q);
                        line(124+p,310-q,137+p,323-q);
                        floodfill(135+p,324-q,8);
                        line(132+p,302-q,145+p,315-q);
                        line(134+p,300-q,147+p,313-q);
                        floodfill(145+p,314-q,8);
                        q+=95;
            }
}
void snake1()
{
            int x,y=0,h=2;
            for(x=0;x<=200;x+=125)
            {
                        arc(120+x,110+y,10,85,60);
                        arc(258+x,85+y,190,240,80);
                        arc(112+x,118+y,10,80,60);
                        arc(250+x,93+y,190,290,80);
                        arc(275+x,100+y,250,270,70);
                        line(250+x,170+y,250+x,165+y);
                        line(250+x,165+y,230+x,160+y);
                        line(230+x,160+y,218+x,155+y);
                        line(130+x,50+y,115+x,47+y);
                        line(121+x,59+y,106+x,52+y);
                        line(106+x,52+y,114+x,48+y);
                        circle(114+x,52+y,1);
                        setfillstyle(1,h);
                        floodfill(116+x,52+y,8);
                        y+=230;          h+=8;
            }
}
void snake2()
{
            arc(130,220,150,180,40);
            arc(130,220,180,253,40);
            arc(105,328,273,80,70);
            arc(143,220,150,180,40);
            arc(143,215,180,230,40);
            arc(112,328,265,50,75);
            arc(80,354,45,72,115);
            line(102,400,104,402);
            line(102,400,107,399);
            line(95,200,110,185);
            line(110,185,109,200);
            line(110,185,111,182);
            circle(104,198,1);
            setfillstyle(1,12);
            floodfill(103,199,8);
}
void snake3()
{
            arc(255,118,320,0,170);
            arc(265,118,305,0,170);
            line(384,229,361,260);
            line(425,120,429,105);
            line(428,105,435,120);
            line(428,105,429,100);
            circle(430,115,1);
            setfillstyle(1,6);
            floodfill(430,117,8);
}
void numbering()
{
            outtextxy(50,393,"1    2         4    5    6    7    8         10");
            outtextxy(50,353,"20   19   18        16   15   1    13        11");
            outtextxy(50,313,"21   22             25   26             29   30");
            outtextxy(50,273,"40   39   38   37   36   35   34   33   32   31");
            outtextxy(50,233,"41        43   44   45        47   48        50");
            outtextxy(50,193,"60        58   57   56   55        53   52     ");
            outtextxy(50,153,"61   62   63   64        66   67   68   69     ");
            outtextxy(50,113,"80   79             76   75   74   73        71");
            outtextxy(50,73, "81        83   84   85   86   87        89   90");
            outtextxy(50,33, "100  99   98   97   96   95   94   93   92   91");
            setcolor(15);
//          outtextxy(480,40,"Lakshmi Narayana's");
            outtextxy(465,50,"The Classic Game of");
            settextstyle(GOTHIC_FONT, HORIZ_DIR, 2);
            setcolor(LIGHTRED);
            outtextxy(470,60,"Snake & Ladder");
            setcolor(WHITE);
            settextstyle(DEFAULT_FONT, HORIZ_DIR, 1);
}
void status()
{
            setcolor(YELLOW);
            outtextxy(480, 95, "Dice output...");
            setlinestyle(SOLID_LINE, 1, 3);
            rectangle(480, 110, 600, 230);
            outtextxy(480, 260, "Turn...");
            rectangle(480, 275, 600, 300);
}
void welcome()
{
            float octave[]={130.81, 146.83, 164.81, 174.61, 196, 220, 246.94}, n;
            for (int i=0; i<50; i++)
            { n=random(6); sound(octave[n]*4); delay(150); nosound(); }
}
void dispdice()
{
            switch (dice)
            {
                        case 1: putimage(535, 165, dot, COPY_PUT);          break;
                        case 2: putimage(515, 145, dot, COPY_PUT);
                                    putimage(555, 185, dot, COPY_PUT);          break;
                        case 3: putimage(515, 145, dot, COPY_PUT);
                                    putimage(535, 165, dot, COPY_PUT);
                                    putimage(555, 185, dot, COPY_PUT);          break;
                        case 4: putimage(515, 145, dot, COPY_PUT);
                                    putimage(555, 145, dot, COPY_PUT);
                                    putimage(515, 185, dot, COPY_PUT);
                                    putimage(555, 185, dot, COPY_PUT);          break;
                        case 5: putimage(515, 145, dot, COPY_PUT);
                                    putimage(555, 145, dot, COPY_PUT);
                                    putimage(535, 165, dot, COPY_PUT);
                                    putimage(515, 185, dot, COPY_PUT);
                                    putimage(555, 185, dot, COPY_PUT);          break;
                        case 6: putimage(515, 145, dot, COPY_PUT);
                                    putimage(515, 165, dot, COPY_PUT);
                                    putimage(515, 185, dot, COPY_PUT);
                                    putimage(555, 145, dot, COPY_PUT);
                                    putimage(555, 165, dot, COPY_PUT);
                                    putimage(555, 185, dot, COPY_PUT);          break;
            }
}
void getdice()
{          dice=random(6);         dice++; dispdice();     }
void play()
{
            getimage(50, 410, 60, 420, o1);
            getimage(70, 410, 80, 420, o2);
            putimage(50, 410, obj1, COPY_PUT);
            putimage(70, 410, obj2, COPY_PUT);
            while (1)
            {
                        if (user==0)
                        {
                                    putimage(487, 282, turn, COPY_PUT);
                                    setcolor(GREEN);
                                    outtextxy(480, 285, "    Player 1");
again:                          ch=getch();
                                    if (ch==13) getdice();
                                    else if (ch==27)          exit(1);
                                    else goto again;
                                    setcolor(YELLOW);
                                    if (cnt1==96 && dice>=4)     { delay(1000); goto invalid1; user=1; }
                                    else if (cnt1==97 && dice>=3)         { delay(1000); goto invalid1; user=1;
}
                                    else if (cnt1==98 && dice>=2)         { delay(1000); goto invalid1; user=1;
}
                                    else if (cnt1==99 && dice>=1)         { delay(1000); goto invalid1; user=1;
}
                                    for (i=1; i<=dice; i++, cnt1++)
                                    {
                                                putimage(x1, y1, o1, COPY_PUT);
                                                if (dir1==0)
                                                {
//                                                          size=imagesize(x1, y1, x1+10, y1+10);
//                                                          o1=malloc(size);
                                                            getimage(x1, y1, x1+10, y1+10, o1);
                                                            x1+=40;
                                                            if (x1>410)     x1-=40, y1-=40, dir1=1;
//                                                          size=imagesize(x1, y1, x1+10, y1+10);
//                                                          o1=malloc(size);
                                                            getimage(x1, y1, x1+10, y1+10, o1);
                                                            putimage(x1, y1, obj1, COPY_PUT);
                                                            delay(1000);   goto ch1;
                                                }
                                                else
                                                {
                                                            size=imagesize(x1, y1, x1+10, y1+10);
//                                                          o1=malloc(size);
                                                            getimage(x1, y1, x1+10, y1+10, o1);
                                                            x1-=40;
                                                            if (x1<50)       x1+=40, y1-=40, dir1=0;
//                                                          size=imagesize(x1, y1, x1+10, y1+10);
//                                                          o1=malloc(size);
                                                            getimage(x1, y1, x1+10, y1+10, o1);
                                                            putimage(x1, y1, obj1, COPY_PUT);
                                                            delay(1000);   goto ch1;
                                                }
ch1:                                         if (cnt1==99)  goto over;
                                    }
                                    if (cnt1==12 || cnt1==72 || cnt1==78)
                                    {
                                                putimage(x1, y1, o1, COPY_PUT);
                                                x1-=80;           y1-=80;
//                                              size=imagesize(x1, y1, x1+10, y1+10);
//                                              o1=malloc(size);
                                                getimage(x1, y1, x1+10, y1+10, o1);
                                                putimage(x1, y1, obj1, COPY_PUT);
                                                if (cnt1==12)              cnt1=34;
                                                else if (cnt1==72)      cnt1=94;
                                                else if (cnt1==78)       { cnt1=100; goto over; }
                                    }
                                    else if (cnt1==22 || cnt1==46)
                                    {
                                                putimage(x1, y1, o1, COPY_PUT);
                                                x1+=40;          y1-=40;
//                                              size=imagesize(x1, y1, x1+10, y1+10);
//                                              o1=malloc(size);
                                                getimage(x1, y1, x1+10, y1+10, o1);
                                                putimage(x1, y1, obj1, COPY_PUT);
                                                if (cnt1==22)              cnt1=38;
                                                else if (cnt1==46)       cnt1=54;
                                                dir1=1;
                                    }
                                    else if (cnt1==36 || cnt1==99)
                                    {
                                                putimage(x1, y1, o1, COPY_PUT);
                                                x1+=160;        y1+=120;
//                                              size=imagesize(x1, y1, x1+10, y1+10);
//                                              o1=malloc(size);
                                                getimage(x1, y1, x1+10, y1+10, o1);
                                                putimage(x1, y1, obj1, COPY_PUT);
                                                if (cnt1==36)              cnt1=9;
                                                else if (cnt1==99)       cnt1=66;
                                                dir1=0;
                                    }
                                    else if (cnt1==62)
                                    {
                                                putimage(x1, y1, o1, COPY_PUT);
                                                y1+=240;
//                                              size=imagesize(x1, y1, x1+10, y1+10);
//                                              o1=malloc(size);
                                                getimage(x1, y1, x1+10, y1+10, o1);
                                                putimage(x1, y1, obj1, COPY_PUT);
                                                cnt1=2;
                                    }
                                    else if (cnt1==90)
                                    {
                                                putimage(x1, y1, o1, COPY_PUT);
                                                x1-=80;           y1+=160;
//                                              size=imagesize(x1, y1, x1+10, y1+10);
//                                              o1=malloc(size);
                                                getimage(x1, y1, x1+10, y1+10, o1);
                                                putimage(x1, y1, obj1, COPY_PUT);
                                                cnt1=48;
                                    }
                                    if (dice==5 || dice==6) user=0; else user=1;
invalid1:                     putimage(500, 130, back, COPY_PUT);
                        }
                        else
                        {
                                    putimage(487, 282, turn, COPY_PUT);
                                    setcolor(BROWN);
                                    outtextxy(480, 285, "    Player 2");
                                    setcolor(YELLOW);
again2:                                    ch=getch();
                                    if (ch==13) getdice();
                                    else if (ch==27)          exit(1);
                                    else goto again2;
                                    if (cnt2==96 && dice!=4)     { delay(1000); goto invalid2; user=0; }
                                    else if (cnt2==97 && dice!=3)          { delay(1000); goto invalid2; user=0;
}
                                    else if (cnt2==98 && dice!=2)          { delay(1000); goto invalid2; user=0;
}
                                    else if (cnt2==99 && dice!=1)          { delay(1000); goto invalid2; user=0;
}
                                    for (i=1; i<=dice; i++, cnt2++)
                                    {
                                                putimage(x2, y2, o2, COPY_PUT);
                                                if (dir2==0)
                                                {
//                                                          size=imagesize(x2, y2, x2+10, y2+10);
//                                                          o2=malloc(size);
                                                            getimage(x2, y2, x2+10, y2+10, o2);
                                                            x2+=40;
                                                            if (x2>440)     x2-=40, y2-=40, dir2=1;
//                                                          size=imagesize(x2, y2, x2+10, y2+10);
//                                                          o2=malloc(size);
                                                            getimage(x2, y2, x2+10, y2+10, o2);
                                                            putimage(x2, y2, obj2, COPY_PUT);
                                                            delay(1000);   goto ch2;
                                                }
                                                else
                                                {
//                                                          size=imagesize(x2, y2, x2+10, y2+10);
//                                                          o2=malloc(size);
                                                            getimage(x2, y2, x2+10, y2+10, o2);
                                                            x2-=40;
                                                            if (x2<50)       x2+=40, y2-=40, dir2=0;
//                                                          size=imagesize(x2, y2, x2+10, y2+10);
//                                                          o2=malloc(size);
                                                            getimage(x2, y2, x2+10, y2+10, o2);
                                                            putimage(x2, y2, obj2, COPY_PUT);
                                                            delay(1000);   goto ch2;
                                                }
ch2:                                         if (cnt2==99)  goto over;
                                    }
                                    if (cnt2==12 || cnt2==72 || cnt2==78)
                                    {
                                                putimage(x2, y2, o2, COPY_PUT);
                                                x2-=80;           y2-=80;
//                                              size=imagesize(x2, y2, x2+10, y2+10);
//                                              o2=malloc(size);
                                                getimage(x2, y2, x2+10, y2+10, o2);
                                                putimage(x2, y2, obj2, COPY_PUT);
                                                if (cnt2==12)              cnt2=34;
                                                else if (cnt2==72)      cnt2=94;
                                                else if (cnt2==78)       { cnt2=100; goto over; }
                                    }
                                    else if (cnt2==22 || cnt2==46)
                                    {
                                                putimage(x2, y2, o2, COPY_PUT);
                                                x2+=40;          y2-=40;
//                                              size=imagesize(x2, y2, x2+10, y2+10);
//                                              o2=malloc(size);
                                                getimage(x2, y2, x2+10, y2+10, o2);
                                                putimage(x2, y2, obj2, COPY_PUT);
                                                if (cnt2==22)              cnt2=38;
                                                else if (cnt2==46)       cnt2=54;
                                                dir2=1;
                                    }
                                    else if (cnt2==36 || cnt2==99)
                                    {
                                                putimage(x2, y2, o2, COPY_PUT);
                                                x2+=160;        y2+=120;
 //                                             size=imagesize(x2, y2, x2+10, y2+10);
 //                                             o2=malloc(size);
                                                getimage(x2, y2, x2+10, y2+10, o2);
                                                putimage(x2, y2, obj2, COPY_PUT);
                                                if (cnt2==36)              cnt2=9;
                                                else if (cnt2==99)       cnt2=66;
                                                dir2=0;
                                    }
                                    else if (cnt2==62)
                                    {
                                                putimage(x2, y2, o2, COPY_PUT);
                                                y2+=240;
//                                              size=imagesize(x2, y2, x2+10, y2+10);
//                                              o2=malloc(size);
                                                getimage(x2, y2, x2+10, y2+10, o2);
                                                putimage(x2, y2, obj2, COPY_PUT);
                                                cnt2=2;
                                    }
                                    else if (cnt2==90)
                                    {
                                                putimage(x2, y2, o2, COPY_PUT);
                                                x2-=80;           y2+=160;
//                                              size=imagesize(x2, y2, x2+10, y2+10);
//                                              o2=malloc(size);
                                                getimage(x2, y2, x2+10, y2+10, o2);
                                                putimage(x2, y2, obj2, COPY_PUT);
                                                cnt2=48;
                                    }
                                    if (dice==5 || dice==6) user=1; else user=0;
invalid2:                     putimage(500, 130, back, COPY_PUT);
                                    delay(1000);
                        }
            }
over: }
void main()
{
            int gd=DETECT, gm;
            initgraph(&gd, &gm, "d:\tc\bgi");
            randomize();
            size=imagesize(487, 282, 593, 293);
            turn=malloc(size);
            getimage(487, 282, 593, 293, turn);
            rectangle(100, 100, 110, 110);
            setfillstyle(1, 2);
            floodfill(102, 102, 15);
            size=imagesize(100, 100, 110, 110);
            obj1=malloc(size);
            getimage(100, 100, 110, 110, obj1);
            cleardevice();
            rectangle(100, 100, 110, 110);
            setfillstyle(1, 6);
            floodfill(102, 102, 15);
            size=imagesize(100, 100, 110, 110);
            obj2=malloc(size);
            getimage(100, 100, 110, 110, obj2);
            cleardevice();
            o1=malloc(size);        o2=malloc(size);
            setcolor(WHITE);
            setfillstyle(SOLID_FILL, 15);
            rectangle(500, 130, 580, 210);
            floodfill(510, 140, 15);
            size=imagesize(500, 130, 580, 210);
            back=malloc(size);
            getimage(500, 130, 580, 210, back);
            setcolor(0);
            setfillstyle(1, 0);
            rectangle(535, 165, 545, 175);
            floodfill(540, 170, 0);
            size=imagesize(535, 165, 545, 175);
            dot=malloc(size);
            getimage(535, 165, 545, 175, dot);
            cleardevice();
            setcolor(WHITE);
            setfillstyle(SOLID_FILL, 15);
            rectangle(500, 130, 580, 210);
            floodfill(510, 140, 15);
            for(int i=0;i<=360;i+=40)
                        for(int j=0;j<=360;j+=40)
                        {
                                    setfillstyle(SOLID_FILL, k);
                                    bar(50+j,30+i,90+j,70+i);
                                    k+=2;
                        }
            ladder1();        ladder2();
            snake1();       snake2();           snake3();
            numbering();  status();
            welcome();     play();
            if (cnt1>=99)              outtextxy(480, 330, "PLAYER 1 WINS!");
            else if (cnt2>=99)     outtextxy(480, 330, "PLAYER 2 WINS!");
            getch();
}

Source codes for Blackhole attack in wireless Adhoc Networks (Manets)

Part 1

 Instructions for Installing Ns2.34 in Ubuntu versions


Instructions for Installing Ns2.34 in Ubuntu 10.04
This manual will work for NS2 allinone-2.34 with Ubuntu 10.04. As Ubuntu is a new version 10.04 need following packages before any further installation, otherwise it will not work with it.
Please follow the following steps:
1.   Install necessary tools for building:
         sudo apt-get install build-essential autoconf automake libxmu-dev   gcc-4.3
2.   It turns out that otcl does not like the version of gcc installed by default in Lucid. So go ahead and change ns-allinone-2.34/otcl-1.13/Makefile.in
Find the Line That says
CC = @CC@
                                        and change it to:
CC = gcc-4.3
3.   Now follow the following steps for installation of nsallinone 2.34 and it will work with your machine. (Copy ns-allinone-2.34.tar.gz)
Suppose that there is "ns-allinone-2.33.tar.gz" in current directory (e.g. "~/" for me is "/home/ram").
All steps are done in Terminal, so open a terminal in Accessories/Terminal.
To extract the file:
tar xvfz ./ns-allinone-2.33.tar.gz
4. Change your directory within terminal as following way
$ cd /home/ram
     $ cd /home/ram/ns-allinone-2.34
4.   Download & install some packages from repository if needed
$ sudo apt-get install build-essential autoconf automake libxmu-dev
5.   Install the ns2
$ cd ns-allinone-2.34
$ ./install
    
    6. Edit some paths
         $ gedit ~/.bashrc
Put these lines on that file in the last. Off course, you might change
/home/ram for it depends on where you extract ns-allinone-2.34.tar.
# LD_LIBRARY_PATH
OTCL_LIB=/home/ram/ns-allinone-2.34/otcl-1.13
NS2_LIB=/home/ram/ns-allinone-2.34/lib
X11_LIB=/usr/X11R6/lib
USR_LOCAL_LIB=/usr/local/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OTCL_LIB:$NS2_LIB
:$X11_LIB:$USR_LOCAL_LIB
# TCL_LIBRARY
TCL_LIB=/home/ram/ns-allinone-2.34/tcl8.4.18/library
USR_LIB=/usr/lib
export TCL_LIBRARY=$TCL_LIB:$USR_LIB
# PATH
XGRAPH=/home/ram/ns-allinone-2.34/bin:/home/ram/ns-allinone-
2.34/tcl8.4.18/unix:/home/ram/ns-allinone-2.34/tk8.4.18/unix:/home/ram/ns-
allinone-2.34/xgraph-12.1/
NS=/home/ram/ns-allinone-2.34/ns-2.34/
NAM=/home/ram/ns-allinone-2.34/nam-1.13/
export PATH=$PATH:$XGRAPH:$NS:$NAM
7.   Validate it (take very long time compare to install process)
$ cd ns-2.33
         $ ./validate
If you have any doubts please comment.. i will try to solve it my level best. Thank you.
Testing ns2 Installation

Use the following ns batch command

set ns [new Simulator]
$ns at 1 “puts \“Hello World!\””
$ns at 1.5 “exit”
$ns run

Then,

1. Copy the commands above and paste in the text editor
2. Save the file as simple.tcl
3. Type command in command prompt

$ ns simple.tcl

4. It will show
Hello World in the line below
TroubleShooting

1. Problem : The system cannot find Tcl or it tells that Tcl does not install correctly

Solution 1 : Check your ns tcl nam ... version, check folder name. If it is not correct, edit the .bashrcSolution 2 : run ./install again

2. Problem : nam does not work

Solution 1 : In fact, you need to change that particular file in your Linux manually.

Here is what you should do.

Apply the following patch :

--- tk8.4.18-orig/generic/tkBind.c 2006-07-21 08:26:54.000000000 +0200
+++ tk8.4.18/generic/tkBind.c 2008-07-05 12:17:10.000000000 +0200
@@ -586,6 +586,9 @@
/* ColormapNotify */ COLORMAP,
/* ClientMessage */ 0,
/* MappingNotify */ 0,
+#ifdef GenericEvent
+ /* GenericEvent */ 0,
+#endif
/* VirtualEvent */ VIRTUAL,
/* Activate */ ACTIVATE,
/* Deactivate */ ACTIVATE,

Create a file with the above lines and name it : abc.patch. To apply the patch navigate to ns directory and execute the following command in terminal:

patch -b < abc.patch
Then run $ ./install to compile and install ns2 again. Hope this helps, drop in your comment for HELP ! :)