【游戏开发】001》复刻一款游戏——致敬《三国斩》

那年大一,正是桌游系列最火的时候,我接触到了一款桌游《三国斩》,至今已过去九年了。
我曾反复删除安装这款游戏几十余次。
官网:http://sgz.173zy.com/index.php

现在我想复刻这款卡牌游戏。

  • 第一步先把相关资料保存下来吧
    • 我选择Python(version 3.7)将官网的资料爬出来
    • 由于一时不会安装不了Python,我决定更换成nodejs(version v8.12.0)
  • 准备获取官网相关资料
    • http://sgz.173zy.com/modules/info/infodetail.php?id=220 为一张素材地址
    • 先写一个demo获取指定URL素材,代码如下
var http = require('http');

var url = "http://sgz.173zy.com/modules/info/infodetail.php?id=220";    //网页地址  

http.get(url, function (res) {
  var tmpData = "";
  res.on('data', function (data) {
    tmpData += data;
  });
  res.on('end', function () {
    console.log(tmpData);
  });
}).on('error', function () {
  console.log("Error!");
});
  • 分析网页代码(如下图,有删减)先找到关键信息点
    • 【游戏开发】001》复刻一款游戏——致敬《三国斩》_第1张图片
      image.png
  • 安装cheerio模块对网页代码分析: npm install cheerio
  • 目标结果:
    【游戏开发】001》复刻一款游戏——致敬《三国斩》_第2张图片
    image.png
  • 当前代码
var http = require('http');
var cheerio = require('cheerio');

var url = "http://sgz.173zy.com";   //网页地址  

http.get(url = url + "/modules/info/infodetail.php?id=220", function (res) {
  var tmpData = "";
  res.on('data', function (data) {
    tmpData += data;
  });
  res.on('end', function () {
    // console.log(tmpData);
    var $ = cheerio.load(tmpData);
    $(".sgz_news_r_alllist").each(
      (i, e) => {
        // console.log(i)
        let tmp = $(e).text().replace(/[\r\n]+/g,"\r\n")
        if (tmp.length > 0) {
          console.log(tmp)
        }
      })
  });
}).on('error', function () {
  console.log("Error!");
});
  • 接下来用正则表达式获取所有资源链接,格式:/modules/info/infodetail.php?id=220
  • 接下来获取所有文字资源
  • 接下来获取所有图片资源链接,格式:http://img.173zy.com/uploadimg/tinyfck/Image/2010.10.15/head/69.jpg

文字资料,手动保存就好


图片批量下载,百度找工具就好


【游戏开发】001》复刻一款游戏——致敬《三国斩》_第3张图片
image.png

【游戏开发】001》复刻一款游戏——致敬《三国斩》_第4张图片
image.png

明天继续

你可能感兴趣的:(【游戏开发】001》复刻一款游戏——致敬《三国斩》)