原帖由 ngclub 于 2005-8-23 01:01 发表
请魔兽争霸制作者验证如下BUG
不好意思特地发了这个帖子.虽然是论坛游戏供大家消闲休闲用.但是出现了如下问题.请制作者参看.
1.可以任意丢弃游戏中任意一只PET(别人的也行)
2.可以将别人的和平决斗,擅自改成会输PET的决斗,然后利用游戏中(包括别人繁荣)任何一只存在PET帮自己战斗,胜利后PET归自己
3.可以随意代别人发出会输PET的决斗
4.可以随意带别人进行卑鄙攻击...攻击下来后PET属于....属于谁偶还不敢尝试.....尝试多了怕数据恢复不了.....
以上,全靠修改连接地址就可以完成.....
以上是我们论坛会员上报,我查看后发现的确有部分情况属实.
特地发一贴还望制作者能看到.另外请DZ官方高态贵手,莫删,让大家一起来把这个hack完善.十分喜欢这个hack
看了一下,很容易修复。
作者那么忙,呵呵,而我却还在失业中,
我先试试帮作者改改,以便他能留下精力去进一步优化程序(我懒,虽想优化,不过想想其烦琐程度,嘿嘿,辛苦作者了)。。
#############################################
#############################################
#############################################
1.可以任意丢弃游戏中任意一只PET(别人的也行)
查找
- $db->query("delete from card_usercard where ucid=".$ucid);
复制代码
替换为:
- $query = $db->query("SELECT * FROM card_usercard where ucid='$ucid' and uid='$winduid'");
- if(!$cardcheck = $db->fetch_array($query)) {
- showmessage('你并没拥有此魔兽!');
- }
- $db->query("delete from card_usercard where ucid='$ucid' and uid='$winduid'");
复制代码
2.可以将别人的和平决斗,擅自改成会输PET的决斗,
查找:
- $add_power_2 = $query["add_".strtolower($e_class)];
复制代码
在下面添加:
3.可以随意代别人发出会输PET的决斗
4.可以随意带别人进行卑鄙攻击...攻击下来后PET属于....
查找:
- function send_challenge($mode, $uid, $ucid)
- {
- //this function is used to store challenge record into database
- global $db, $query,$winduid,$basename;
- if (check_challenge($ucid)) showmessage("<input type=hidden name=返回>这只魔兽正在等候挑战, 暂时无法出战");
- else if (check_challenge_interval($ucid)) showmessage("<input type=hidden name=返回>这只魔兽正在休息中, 暂时无法出战");
- if ($uid==$winduid) showmessage("<input type=hidden name=返回>无法挑战自己");
- $db->query("insert into card_challenge (sender_ucid, receiver_id, mode) values (".$ucid.", ".$uid.", ".$mode.")");
- header("location: ".$basename."&action=show_msg&header=讯息&content=挑战已经送出&link=fight");
- }
复制代码
替换为:
- function send_challenge($mode, $uid, $ucid)
- {
- //this function is used to store challenge record into database
- global $db, $query,$winduid,$basename;
- $query = $db->query("SELECT * FROM card_usercard where ucid='$ucid' and uid='$winduid'");
- if(!$cardcheck = $db->fetch_array($query)) {
- showmessage('你并没拥有此魔兽!');
- }
- if (check_challenge($ucid)) showmessage("<input type=hidden name=返回>这只魔兽正在等候挑战, 暂时无法出战");
- else if (check_challenge_interval($ucid)) showmessage("<input type=hidden name=返回>这只魔兽正在休息中, 暂时无法出战");
- if ($uid==$winduid) showmessage("<input type=hidden name=返回>无法挑战自己");
- $db->query("insert into card_challenge (sender_ucid, s_uid,s_cid, receiver_id, mode) values ('$ucid','$winduid', '$ucid', '$uid', '$mode')");
- header("location: ".$basename."&action=show_msg&header=讯息&content=挑战已经送出&link=fight");
- }
复制代码
[ 本帖最后由 xiori 于 2005-8-24 16:02 编辑 ] |