| 1 | $Id$ |
|---|
| 2 | $2004.6.15 stiger@smth |
|---|
| 3 | |
|---|
| 4 | INSTALL只写了bbsd等主要程序的安装方法 |
|---|
| 5 | 按照那个安装完本站后,你得到的只是一个最简单的电子公告板。 |
|---|
| 6 | |
|---|
| 7 | 其他的一些外部程序也是非常重要,所以单独用一个文件来说明。 |
|---|
| 8 | 刚好我自己在转站,就是顺便了。 |
|---|
| 9 | |
|---|
| 10 | ============================================================== |
|---|
| 11 | |
|---|
| 12 | 【一】 统计程序等 |
|---|
| 13 | |
|---|
| 14 | 1.) 十大热门话题 |
|---|
| 15 | i) 普通方式的十大热门话题统计 |
|---|
| 16 | 代码: local_utl/poststat.c |
|---|
| 17 | 系统: $mkdir $BBSHOME/tmp/Xpost |
|---|
| 18 | crontab: |
|---|
| 19 | 59 * * * * $BBSHOME/bin/poststat |
|---|
| 20 | 59 23 * * * rm -f $BBSHOME/tmp/Xpost/* |
|---|
| 21 | 59 23 * * * rm -f $BBSHOME/.post.X |
|---|
| 22 | 注意: 每天的第一小时只能运行一次,否则新的会覆盖老的 |
|---|
| 23 | |
|---|
| 24 | 说明:如果0:00-0:59之内由于某些原因未能执行poststat, |
|---|
| 25 | 十大统计将会一直保留前一天的内容,此种情况下, |
|---|
| 26 | 请手动执行 $BBSHOME/bin/poststat refresh 以强制 |
|---|
| 27 | 刷新十大。 |
|---|
| 28 | |
|---|
| 29 | ii)使用MYSQL的十大热门话题统计 |
|---|
| 30 | 代码: local_utl/newpoststat.c |
|---|
| 31 | define: #define NEWPOSTLOG |
|---|
| 32 | #define NEWPOSTSTAT |
|---|
| 33 | 需要: #define HAVE_MYSQL_SMTH 1 |
|---|
| 34 | crontab: |
|---|
| 35 | 40 * * * * $BBSHOME/bin/newpoststat |
|---|
| 36 | mysql: |
|---|
| 37 | create table `postlog` ( |
|---|
| 38 | `id` int unsigned NOT NULL auto_increment, |
|---|
| 39 | `userid` char(15) NOT NULL default '', |
|---|
| 40 | `bname` char(31) NOT NULL default '', |
|---|
| 41 | `title` char(81) NOT NULL default '', |
|---|
| 42 | `time` timestamp NOT NULL, |
|---|
| 43 | `threadid` int unsigned NOT NULL default '0', |
|---|
| 44 | `articleid` int unsigned NOT NULL default '0', |
|---|
| 45 | PRIMARY KEY (`id`), |
|---|
| 46 | KEY userid (`userid`), |
|---|
| 47 | KEY bname(`bname`, `threadid`), |
|---|
| 48 | KEY timestamp(`time`) |
|---|
| 49 | ) TYPE=MyISAM COMMENT='postlog'; |
|---|
| 50 | |
|---|
| 51 | create table `toplog` ( |
|---|
| 52 | `id` int unsigned NOT NULL auto_increment, |
|---|
| 53 | `userid` char(15) NOT NULL default '', |
|---|
| 54 | `bname` char(31) NOT NULL default '', |
|---|
| 55 | `title` char(81) NOT NULL default '', |
|---|
| 56 | `time` timestamp NOT NULL, |
|---|
| 57 | `date` date NOT NULL, |
|---|
| 58 | `topth` int NOT NULL default '1', |
|---|
| 59 | `count` int NOT NULL default '0', |
|---|
| 60 | `threadid` int unsigned NOT NULL default '0', |
|---|
| 61 | PRIMARY KEY (`id`), |
|---|
| 62 | KEY userid (`userid`), |
|---|
| 63 | KEY bname(`bname`, `threadid`), |
|---|
| 64 | KEY date(`date`), |
|---|
| 65 | UNIQUE top (`date`,`topth`) |
|---|
| 66 | ) TYPE=MyISAM COMMENT='toplog'; |
|---|
| 67 | 注意: postlog表过大时可以清空以前的发文记录,不影响 |
|---|
| 68 | |
|---|
| 69 | 说明:同样可以用 $BBSHOME/bin/newpoststat refresh 强制刷新十大。 |
|---|
| 70 | |
|---|
| 71 | 2.) MYSQL 斑竹任期记录 |
|---|
| 72 | |
|---|
| 73 | define: #define BMSLOG |
|---|
| 74 | 需要: #define HAVE_MYSQL_SMTH 1 (这个在config.h里) |
|---|
| 75 | mysql: |
|---|
| 76 | CREATE TABLE bms ( |
|---|
| 77 | `id` int(10) unsigned NOT NULL auto_increment, |
|---|
| 78 | board varchar(20) NOT NULL default '', |
|---|
| 79 | `in` timestamp(14) NOT NULL, |
|---|
| 80 | out int(11) NOT NULL default '3', |
|---|
| 81 | sysop varchar(15) default NULL, |
|---|
| 82 | memo varchar(255) default NULL, |
|---|
| 83 | userid varchar(15) NOT NULL default '', |
|---|
| 84 | KEY `id` (`id`), |
|---|
| 85 | KEY userid (userid), |
|---|
| 86 | KEY board (board) |
|---|
| 87 | ) TYPE=MyISAM COMMENT='斑竹任期记录表'; |
|---|
| 88 | |
|---|
| 89 | |
|---|
| 90 | 【二】 游戏等 |
|---|
| 91 | |
|---|
| 92 | 1.) 推箱子 |
|---|
| 93 | 代码: service/worker |
|---|
| 94 | 系统: $mkdir $BBSHOME/game/worker |
|---|
| 95 | $cd $BBSHOME/game/worker |
|---|
| 96 | $cp $BBSSRC/service/worker/worker.tar.gz . |
|---|
| 97 | $tar zxvf worker.tar.gz |
|---|
| 98 | menu.ini: |
|---|
| 99 | @RunMBEM 0, 0, PERM_LOGINOK, "O@mod:game/so/libworker.so#worker_main", "(O) 推箱子" |
|---|
| 100 | |
|---|
| 101 | 2.) 穿梭 |
|---|
| 102 | 代码: service/bbsnet |
|---|
| 103 | menu.ini: |
|---|
| 104 | @RunMBEM 10, 15, PERM_LOGINOK, "B@mod:service/libbbsnet.so#bbsnet_main", "(F) 网络穿梭" |
|---|
| 105 | $BBSHOME/etc/bbsnet.ini: |
|---|
| 106 | $BBSSRC/bbshome/etc/bbsnet.ini是范例 |
|---|
| 107 | |
|---|
| 108 | 3.) 星空战斗鸡 |
|---|
| 109 | 代码: service/pip |
|---|
| 110 | menu.ini: |
|---|
| 111 | @RunMBEM 0, 0, PERM_LOGINOK, "A@mod:game/so/libpip.so#mod_default", "(A) 星空战斗鸡" |
|---|
| 112 | |
|---|
| 113 | 4.) 友情测试 |
|---|
| 114 | 代码: service/friendtest |
|---|
| 115 | menu.ini: |
|---|
| 116 | @RunMBEM 0, 0, PERM_LOGINOK, "T@mod:service/libfriendtest.so#friend_main", "(T) 友谊测试" |
|---|
| 117 | |
|---|
| 118 | 5.) 打字游戏 |
|---|
| 119 | 代码: service/tt.c |
|---|
| 120 | menu.ini: |
|---|
| 121 | @RunMBEM 0, 0, PERM_LOGINOK, "G@mod:service/libtt.so#tt_main", "(G) 打字游戏" |
|---|
| 122 | |
|---|
| 123 | 6.) 杀人游戏 |
|---|
| 124 | 代码: service/kill.c |
|---|
| 125 | menu.ini: |
|---|
| 126 | @RunMBEM 0, 0, PERM_LOGINOK, "K@mod:service/libkiller.so#killer_main", "(K) 杀人游戏" |
|---|
| 127 | |
|---|
| 128 | 7.) 开心词典 |
|---|
| 129 | 代码: service/quiz.c |
|---|
| 130 | menu.ini: |
|---|
| 131 | @RunMBEM 0, 0, PERM_LOGINOK, "Q@mod:service/libquiz.so#quiz_main", "(Q) 开心词典" |
|---|
| 132 | mysql: |
|---|
| 133 | 好像没有公开,呵呵,所以暂时sorry. |
|---|
| 134 | |
|---|
| 135 | 8.) 俄罗斯方块 |
|---|
| 136 | 代码: service/tetris.c |
|---|
| 137 | menu.ini: |
|---|
| 138 | @RunMBEM 0, 0, PERM_LOGINOK, "J@mod:service/libtetris.so#tetris_main", "(J) 俄罗斯方块" |
|---|
| 139 | |
|---|
| 140 | 9.) 扫雷 |
|---|
| 141 | 代码: service/winmine.c |
|---|
| 142 | menu.ini: |
|---|
| 143 | @RunMBEM 0, 0, PERM_LOGINOK, "T@mod:service/libwinmine.so#winmine_main", "(T) 扫雷" |
|---|
| 144 | @RunMBEM 0, 0, PERM_LOGINOK, "T@mod:service/libwinmine.so#winmineg_main", "(T) 感应式扫雷" |
|---|