如果你正在写游戏,你应该考虑作弊者以及如何防止他们作弊.
我不认为只有mmo多人游戏,还有单人游戏或"自制啤酒"p2p mp游戏.
当游戏完全基于服务器 - 客户端架构时,我认为这项工作几乎已经完成,但也有墙壁黑客或其他东西.
我做了自己的p2p游戏,一段时间后出现了骗子.他们只是使用作弊引擎并尝试过speedhacks和记忆黑客的scriptkiddies.
大多数speedhacks挂钩gettickcount.我通过以下简单的技巧来整理速度计算器.我只追踪time()-GetTickCount()
价值,如果差异发生变化就会有作弊行为.
可以通过在某处保留散列副本并始终移动它并始终通过随机值对其进行重新分类来整理内存损坏.不匹配导致崩溃.
要完全挑选Cheat Engine,只需检查:
if (OpenFileMapping(FILE_MAP_READ,false,'CEHYPERSCANSETTINGS')!=0)
{
// Cheat Engine runs.
}
Run Code Online (Sandbox Code Playgroud)
(朋友告诉我这个,我还没有测试过.)
这些技巧排除了最多的骗子.但是当然还有更多的作弊技巧.我打开了这个wiki,讨论了更多另外的作弊技巧以及避免它们的方法.
我是一位经验丰富的.net桌面开发人员,但这是我第一次尝试使用ASP.NET,而且我几乎立刻就难倒了.
我已经使用了VS2008"新网站"向导,并获得了一个简单的页面工作,代码隐藏页面和所有.但是我为下一步为所有页面使用的一些实用程序方法添加一个简单的静态类是没有用的.
我已经尝试将代码放在App_Code中,我已经尝试创建一个新的库项目并引用它...所有内容总是在Visual Studio中编译好,但是当上传到服务器时它只是拒绝查找命名空间/类或识别图书馆大会.我已经尝试搞乱web.config但是却找不到任何方法来引用库程序集(例如"*"似乎没有这样做).
服务器页面显示:版本信息:Microsoft .NET Framework版本:2.0.50727.3074; ASP.NET版本:2.0.50727.3074
是否有实用方法的最佳实践方法,如何让我的代码隐藏页面识别除了自身之外的任何类(或更好的命名空间,甚至是汇编)?
我得到的确切错误是:CS0246:无法找到类型或命名空间名称'MyCommon'(您是否缺少using指令或程序集引用?)
这听起来很简单但我无法在任何地方找到解决方案.
如何在iPhone中为可可物镜c投射物体?
我试图在nsuinteger对象中获取字符串的长度,如下所示:
NSUInteger *phoneNumberLength = [phoneNumber length];
Run Code Online (Sandbox Code Playgroud)
我得到警告初始化使得指针来自整数而没有强制转换.
如何投射此对象和所有对象?
看起来这应该很简单,但我没有在网络搜索中找到它.
我有一个ofstream的是open()
,而且fail()
现在是真实的.我想知道失败的原因,就像errno
我会这样做sys_errlist[errno]
.
如何防止访问某些URL请求的页面?
如果我form.html, processFrom.php and getResults.php
在我的webapp根目录中,即使processFrom.php
没有回显任何内容,如何通过键入URL来阻止用户访问此文件?
我在几年前看到过,但由于它没有被广泛支持,网站正在放弃使用它.
我目前正在设计一个网站,它将在设计中包含滚动条,并想知道CSS2是否有关于样式浏览器滚动条的任何规范,因为默认颜色不适合.如果没有规范,任何对特定浏览器行为的引用都将受到赞赏.
如果没有CSS规范,我将不得不依赖于使用JS自定义生成的滚动条.关于如何建立一个的参考也值得赞赏.
在SQL中,是否有一种方法可以强制只有一组列中的一列具有值,而其他列为空?可能是约束还是触发?这种类型的东西可能用于查找表,但有没有任何替代表设计可以更好地实现这一点?
例如:
ID OtherTable1ID OtherTable2ID OtherTable3ID
-----------------------------------------------------
1 23 NULL NULL
2 NULL 45 NULL
3 33 55 NULL -- NOT ALLOWED
Run Code Online (Sandbox Code Playgroud)
主要问题是这些列都是其他表的FK,因此我无法将它们折叠为单个列.
我正在使用SQL Server,但任何答案都可以.
如何生成符合以下条件的所有排列:如果两个排列彼此相反(即[1,2,3,4]和[4,3,2,1]),则认为它们相等且只有一个排列应该是最终结果.
例:
permutations_without_duplicates ([1,2,3])
[1, 2, 3]
[1, 3, 2]
[2, 1, 3]
Run Code Online (Sandbox Code Playgroud)
我正在置换包含唯一整数的列表.
产生的排列数量很高,所以我想尽可能使用Python的生成器.
编辑:如果可能的话,我不想将所有排列的列表存储到内存中.
在阅读库源代码时,我看到有相同名称的文件.c
和.h
文件.在主源中,.h
包含文件但不包含.c
文件.当我看代码的.h
文件,它也不会#include
在.c
同一个名字的文件.我错过了什么吗?.c
当.h
同名文件是#include
'd?时,编译器是否自动包含文件?
我的应用程序中有几个线程在后台运行.它们连接到数据库并执行一些耗时的选择查询.在大多数情况下,这些查询只返回几条记录.然而,有时他们可能会返回数万条记录.然后将所有这些循环处理.
因为这种情况可能同时发生在多个线程中,所以我不希望我的应用程序在这些线程处理数据时使用100%的CPU时间; 我也不想让所有线程争夺处理器的时间.因此,我在这些线程中的循环的每次迭代中调用Sleep()函数.
但是,我不知道如何调整睡眠时间.我不希望循环永远持续,所以睡眠时间不能太长.我在每次迭代中将它设置为2毫秒(在每个线程中)(为什么2ms? - 这是一个很好的问题:)).
另一方面,我认为我可以延长睡眠时间,但每n次迭代只调用一次睡眠(比方说,每50次迭代睡眠(100次)).我应该选择哪种方法?循环的一次迭代每次约30毫秒(没有任何睡眠).
请指教.
谢谢!
马里乌什.