c++做游戏

最近有人问我能不能破解防沉迷系统?

我当时不太知道防沉迷系统具体是什么东西,只知道它好像是限制未成年人玩游戏的一个措施

所以我就上百度查了一下,具体自己看吧

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAWVJfVA==,size_20,color_FFFFFF,t_70,g_se,x_16

这个系统破解是肯定不行的,虽然网上也有很多视频,但这些明确肯定是假的,这个系统

一出台,检查是很严格的,不可能能破解

但是,破解不了,还不能自己做一个吗?

1.首先要解决的就是年龄问题,这个比较简单,从身份中号中获取就可以

2.其次是姓名。这个可以搞出来,但是需要登录注册一个网站才可以,因为作者比较懒,作者知道大家都不想搞得那么麻烦,所以就不做姓名了。

3.最重要的是时间,我做的系统没有那么严格,每天的20:00——21:00可以进入游戏。所以只需要获取时间。先获取自1970年1月1日到现在的总秒数,在通过一系列简单复杂的代码,转化成类似于9019这样的时间,这就相当于9:19,0是占位用的,因为9、1、9在这里是分别明确的3个数字,我们要把十位减去字符0(转化成int形)*10再加个位,就是24时格式化的时间。然后再判断小时是不是20,因为20就是晚上8点以后。

4.再写一个检查:检查时间有没有超过20,也就是!=20

上代码!

#include <iostream>
#include <string>
#include <iomanip>
#include <time.h>
#include<stdlib.h>
#include<windows.h>
#include<cstring>
#include<conio.h>
using namespace std;
 
 
int sfz()
{
    int a[18],i,n,b;          
    printf("当前未进行认证\n");
    printf("请输入身份证号:");
    for(i=0;i<18;i++)
    scanf("%1d",&a[i]);
    n=a[6]*1000+a[7]*100+a[8]*10+a[9];
    b=2022-n;
    if(b<18)
        return 0;
    else
        return 1;
}

int huoqu()
{
 	time_t now_time;
	now_time = time(NULL);
	struct tm *local;
	local=localtime(&now_time); //获取当前系统时间
	char buf[80];
	strftime(buf,80,"%H0%M",local);
	if ((buf[0]-'0')*10+(buf[2]-'0')==20)
	{
		return 1;
	}
	else
	{
		return 0;
	}
}

int jiancha()
{
	time_t now_time;
	now_time = time(NULL);
	struct tm *local;
	local=localtime(&now_time); //获取当前系统时间
	char buf[80];
	strftime(buf,80,"%H0%M",local);
	if ((buf[0]-'0')*10+(buf[2]-'0')!=20)
	{
		return 0;
	}
}

int main()
{
	system("color F0");
	if (sfz()==0)
	{
		if (huoqu()==1)
		{
			start:
				cout<<"        21点"<<endl;
				cout<<"----------------------"<<endl;
				cout<<"输入1开始"<<endl;
				int n;
				cin>>n;
				if (n==1)
				{
					system("cls");
					cout<<"开始"<<endl;
					//输入昵称 
					string name1,name2;
					cout<<"请输入玩家1昵称"<<endl;
					cin>>name1;
					cout<<"请输入玩家2昵称"<<endl;
					cin>>name2;
					/**/
					string op1,op2;
					int n1=0,n2=0;
					int s1=0,s2=0;
					//玩家1 
					cout<<"请玩家1拿牌"<<endl;
					while (true)
					{
						cout<<"是否继续拿?(y/n)"<<endl;
						cin>>op1;
						if (op1=="y")
						{
							srand(time(NULL));
							s1 += (rand()%(7-1+1)+1);
							cout<<"你的牌一共有"<<s1<<endl; 
							n1++;
							if (jiancha()==0)
							{
								cout<<"\n腾讯成长守护提醒您:\n根据国家防沉迷通知的相关要求和腾讯最新强化的防沉迷策略,由于您是未成年玩家,仅能在\n周五、周六、和法定节假日每日20时至21时登录游戏,在上述时间段外无法游戏,请注\n意休息。\n";
								Sleep(1000);
								exit(0);
							}
						}
						else if (op1=="n")
						{
							cout<<"你一共拿了"<<n1<<"张牌";
							if (jiancha()==0)
							{
								cout<<"\n腾讯成长守护提醒您:\n根据国家防沉迷通知的相关要求和腾讯最新强化的防沉迷策略,由于您是未成年玩家,仅能在\n周五、周六、和法定节假日每日20时至21时登录游戏,在上述时间段外无法游戏,请注\n意休息。\n";
								Sleep(1000);
								exit(0);
							}
							break;
						}
						else
						{
							cout<<"请不要乱输!"; 
							if (jiancha()==0)
							{
								cout<<"\n腾讯成长守护提醒您:\n根据国家防沉迷通知的相关要求和腾讯最新强化的防沉迷策略,由于您是未成年玩家,仅能在\n周五、周六、和法定节假日每日20时至21时登录游戏,在上述时间段外无法游戏,请注\n意休息。\n";
								Sleep(1000);
								exit(0);
							}
						}
						if (jiancha()==0)
						{
							cout<<"\n腾讯成长守护提醒您:\n根据国家防沉迷通知的相关要求和腾讯最新强化的防沉迷策略,由于您是未成年玩家,仅能在\n周五、周六、和法定节假日每日20时至21时登录游戏,在上述时间段外无法游戏,请注\n意休息。\n";
							Sleep(1000);
							exit(0);
						}
					}
					Sleep(3000);
					system("cls");
					//玩家2 
					cout<<"请玩家2拿牌"<<endl;
					while (true)
					{
						cout<<"是否继续拿?(y/n)"<<endl;
						cin>>op2;
						if (op2=="y")
						{
							srand(time(NULL));
							s2 += (rand()%(7-1+1)+1);
							cout<<"你的牌一共有"<<s2<<endl;
							n2++;
							if (jiancha()==0)
							{
								cout<<"\n腾讯成长守护提醒您:\n根据国家防沉迷通知的相关要求和腾讯最新强化的防沉迷策略,由于您是未成年玩家,仅能在\n周五、周六、和法定节假日每日20时至21时登录游戏,在上述时间段外无法游戏,请注\n意休息。\n";
								Sleep(1000);
								exit(0);
							}
						}
						else if (op1=="n")
						{
							cout<<"你一共拿了"<<n2<<"张牌";
							if (jiancha()==0)
							{
								cout<<"\n腾讯成长守护提醒您:\n根据国家防沉迷通知的相关要求和腾讯最新强化的防沉迷策略,由于您是未成年玩家,仅能在\n周五、周六、和法定节假日每日20时至21时登录游戏,在上述时间段外无法游戏,请注\n意休息。\n";
								Sleep(1000);
								exit(0);
							}
							break;
						}
						else
						{
							cout<<"请不要乱输!"; 
							if (jiancha()==0)
							{
								cout<<"\n腾讯成长守护提醒您:\n根据国家防沉迷通知的相关要求和腾讯最新强化的防沉迷策略,由于您是未成年玩家,仅能在\n周五、周六、和法定节假日每日20时至21时登录游戏,在上述时间段外无法游戏,请注\n意休息。\n";
								Sleep(1000);
								exit(0);
							}
						}
						if (jiancha()==0)
						{
							cout<<"\n腾讯成长守护提醒您:\n根据国家防沉迷通知的相关要求和腾讯最新强化的防沉迷策略,由于您是未成年玩家,仅能在\n周五、周六、和法定节假日每日20时至21时登录游戏,在上述时间段外无法游戏,请注\n意休息。\n";
							Sleep(1000);
							exit(0);
						}
					}
					Sleep(3000);
					system("cls");
					cout<<"正在统计....."<<endl;
					Sleep(1000);
					cout<<"玩家1总分数:"<<s1<<endl;
					cout<<"玩家2总分数:"<<s2<<endl;
					if (s1<=21 && s2<=21)
					{
						if (s1>s2)    {
							cout<<"【"<<name1<<"】"<<"is the winner!!!";
							cout<<"\n按a重来";
							int chch = _getch();
							if (chch==97) goto start;
						}
						if (s1==s2)  {
							cout<<"【"<<name1<<"】"<<"and"<<"【"<<name2<<"】"<<"come out even!!!";
							cout<<"\n按a重来";
							int chch = _getch();
							if (chch==97) goto start;
						}  
						if (s1<s2)  {
							cout<<"【"<<name2<<"】"<<"is the winner!!!";
							cout<<"\n按a重来";
							int chch = _getch();
							if (chch==97) goto start;
						}  
					}
					if(s1>21 && s2>21)
					{
						cout<<"两方都超过21分,"<<"【"<<name1<<"】"<<"and"<<"【"<<name2<<"】"<<"come out even!!!";
						cout<<"\n按a重来";
						int chch = _getch();
						if (chch==97) goto start;
					}
					if (s1>21 && s2<=21)	{
						cout<<"【"<<name2<<"】"<<"is the winner!!!";
						cout<<"\n按a重来\n";
						int chch = _getch();
						if (chch==97) goto start;
					}
					if (s2>21 && s1<=21)	{
						cout<<"【"<<name1<<"】"<<"is the winner!!!";
						cout<<"\n按a重来";
						int chch = _getch();
						if (chch==97) goto start;
					}
					}
		}
		if (huoqu()==0)
		{
			cout<<"\n腾讯成长守护提醒您:\n根据国家防沉迷通知的相关要求和腾讯最新强化的防沉迷策略,由于您是未成年玩家,仅能在\n周五、周六、和法定节假日每日20时至21时登录游戏,在上述时间段外无法游戏,请注\n意休息。\n";
			Sleep(3000);
			exit(0);
		}
	}
	if (sfz()==1)
	{
		start1:
			cout<<"        21点"<<endl;
			cout<<"----------------------"<<endl;
			cout<<"		 输入1开始"<<endl;
			int n;
			cin>>n;
			if (n==1)
			{
				system("cls");
				cout<<"开始"<<endl;
				//输入昵称 
				string name1,name2;
				cout<<"请输入玩家1昵称"<<endl;
				cin>>name1;
				cout<<"请输入玩家2昵称"<<endl;
				cin>>name2;
				/**/
				string op1,op2;
				int n1=0,n2=0;
				int s1=0,s2=0;
				//玩家1 
				cout<<"请玩家1拿牌"<<endl;
				while (true)
				{
					cout<<"是否继续拿?(y/n)"<<endl;
					cin>>op1;
					if (op1=="y")
					{
						srand(time(NULL));
						s1 += (rand()%(7-1+1)+1);
						cout<<"你的牌一共有"<<s1<<endl; 
						n1++;
					}
					else if (op1=="n")
					{
						cout<<"你一共拿了"<<n1<<"张牌";
						break;
					}
					else
					{
						cout<<"请不要乱输!"; 
					}
				}
				Sleep(3000);
				system("cls");
				//玩家2 
				cout<<"请玩家2拿牌"<<endl;
				while (true)
				{
					cout<<"是否继续拿?(y/n)"<<endl;
					cin>>op2;
					if (op2=="y")
					{
						srand(time(NULL));
						s2 += (rand()%(7-1+1)+1);
						cout<<"你的牌一共有"<<s2<<endl;
						n2++;
					}
					else if (op1=="n")
					{
						cout<<"你一共拿了"<<n2<<"张牌";
						break;
					}
					else
					{
						cout<<"请不要乱输!"; 
					}
				}
				Sleep(3000);
				system("cls");
				cout<<"正在统计....."<<endl;
				Sleep(1000);
				cout<<"玩家1总分数:"<<s1<<endl;
				cout<<"玩家2总分数:"<<s2<<endl;
				if (s1<=21 && s2<=21)
				{
					if (s1>s2) {
						cout<<"【"<<name1<<"】"<<"is the winner!!!";
						cout<<"\n按a重来\n";
						int chch = _getch();
						if (chch==97) goto start1;
					}   
					if (s1==s2){
						cout<<"【"<<name1<<"】"<<"and"<<"【"<<name2<<"】"<<"come out even!!!";
						cout<<"\n按a重来\n";
						int chch = _getch();
						if (chch==97) goto start1;
					}    
					if (s1<s2){
						cout<<"【"<<name2<<"】"<<"is the winner!!!";
						cout<<"\n按a重来\n";
						int chch = _getch();
						if (chch==97) goto start1;
					}   
				}
				if(s1>21 && s2>21)
				{
					cout<<"两方都超过21分,"<<"【"<<name1<<"】"<<"and"<<"【"<<name2<<"】"<<"come out even!!!";
					cout<<"\n按a重来\n";
					int chch = _getch();
					if (chch==97) goto start1;
				}
				if (s1>21 && s2<=21)	{
					cout<<"【"<<name2<<"】"<<"is the winner!!!";
					cout<<"\n按a重来\n";
					int chch = _getch();
					if (chch==97) goto start1;
				}
				if (s2>21 && s1<=21)	{
					cout<<"【"<<name1<<"】"<<"is the winner!!!";
					cout<<"\n按a重来\n";
					int chch = _getch();
					if (chch==97) goto start1;
				}
			}
	}
	return 0;
 } 

下面有惊喜!

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETkBZUl9U,size_20,color_FFFFFF,t_70,g_se,x_16

有奖竞猜:最后, 猜猜这是什么游戏,评论区留言

猜你喜欢

转载自blog.csdn.net/m0_64036070/article/details/122767771
今日推荐