PSV 基本的游戏下载方式

前言

这里将为您介绍如何使用各种合理有效的工具对PSV的应用进行下载与安装。

方法列表

No. Method device
1 黑商店 (整合下载) PS Vita
2 NPS (整合下载) Computer
3 TSV文件 (pkg格式不含解码) Computer
4 mai版本游戏 (跑跑、翼风、老玩家.etc) Computer
5 VPK【PSV安装包格式】(跑跑、翼风、老玩家.etc) Computer

温馨提示

游戏

  1. 如果是直接使用TSV文件的话,则需要 pkg2zip.exe 进行文件解码。
    PSV 基本的游戏下载方式_第1张图片
    PSV 基本的游戏下载方式_第2张图片
    PSV 基本的游戏下载方式_第3张图片
  2. NPS 下载游戏很容易中断或者下载失败或者点击继续无反应等等,但总体功能强大。
  3. 想方便的话直接黑商店,网速不好则听天由命。(《千之涛刃.桃花染的皇姬》这个就将近3天才下载完)
  4. 黑商店 和 NPS 的网速都是不稳定的,时快时慢,平时经常也就十几k而已。
  5. 这里下载的游戏基本属于 nnd 破解的游戏,可连接网络。
  6. mai 游戏不能联网,所以这个需要自行寻找并下载。
  7. mai 游戏打开游戏文件夹时,部分文件或文件夹会带有mai的文字。

下载 & 解码

  1. 使用迅雷下载可以开会员。这里是资源充足或者有会员,所以速度基本是几m左右及以上(具体看自家套餐,以及资源的下载量)
    Download Game Case 1.PNG
    PSV 基本的游戏下载方式_第4张图片
    PSV 基本的游戏下载方式_第5张图片
    Download Game Case 3.PNG

  2. PSV 的应用内容基本需要 PKG 解码。

  3. 存储空间较小的应用,比如主题。则可以在黑商店下载,速度也不错。

掌机

  1. PSV 数据线接上电脑后,在 PSV 中打开 VitaShell,并按下 select 键。此刻便可以进行文件传输。
类型 游戏目录 DLC目录
nps /app /addcount
mai / VPK /mai /addcount_mai
1. / 为根目录,VPK 与 mai 类似,但需要手动把 vpk 后缀改为 rar 解压格式。
2. 无论游戏的类型是哪种,都需要解压后,再进行游戏本体复制。
3. mai 与 VPK 是通过工具进行某种操作后,再移动至 app 或 addcount 目录中。因此操作时所需容量可能是游戏本体的两倍及以上。
  1. 本体复制到里面后,可以使用 VitaShell 和 VITA 工具箱 进行气泡刷新操作。成功后会自动显示该游戏图标。如果进度条在最后几十左右卡顿的话,很有可能是失败。原因可能主要是游戏本体不完整,或者是该本体类型是 mai,需要 MaiDumpTool 工具进行安装。
工具 操作
VitaShell 三角按键 -> 刷新桌面气泡
VITA Tool Box 刷新游戏气泡

主题

  1. 破解版的主题不能直接应用,原因是开机就恢复原来的原生主题。
  2. 主题的解决方案。登陆 PSN,下载一个免费的主题,应用该Theme并重启。现在再使用破解的主题就可以了。

PSN

  1. PSN 无法登陆可能是版本问题,去设置的伪装里面查看并更改到相应的伪装系统版本。

TSV文件下载

  1. TSV文件的大概样子
    PSV 基本的游戏下载方式_第6张图片
    PSV 基本的游戏下载方式_第7张图片

  2. 下载的PKG地址
    PKG Link.PNG

  3. 解码的zRIF
    PKG zRIF.PNG

  4. window的bat执行pkg2zip.exe解码器

@echo off
pkg2zip.exe pkg文件路径 zRIF解码的密钥
pause

py的工具制作

  1. TSV 转 Excel
from openpyxl import Workbook
from sys import argv

name = argv[1]
inFile = f'{name}.tsv'
outFile = f'{name}.xlsx'

wb = Workbook()
st = wb.active

with open(inFile, 'r', encoding='utf8') as fp:
    row = 0
    while True:
        temp = fp.readline()
        if not temp:
            break
        items = temp.split('\t')
        row += 1
        for (key, item) in enumerate(items):
            st.cell(row, key+1).value = item

wb.save(outFile)
  1. 自动查找 TSV 文件的 zRIF密钥
from os import system
from os.path import exists
from os.path import join
import sys

# open file stream
# gp = open(gFile, 'r', encoding='utf8')

# find zRIF in data file: link[4], zRIF[5] != MISSING
def get_zRIF(g_file):
    fp = open(dbFile, 'r', encoding='utf8')
    temp = True
    res = False

    while temp:
        temp = fp.readline()
        arr = temp.split('\t')
        if arr[3].rfind(g_file.strip()) != -1 and \
           arr[4] != 'Missing':
            res = arr[4].strip()

    fp.close()
    return res

# parse one pkg
def parser(f_path):
    g_name = gameName(f_path)
    zRIF = get_zRIF(g_name)
    # print(g_name, '\n', zRIF)
    pkg2zip(g_name, zRIF)
    

def pkg2zip(f_path, zRIF):
    if zRIF:
        system(f'pkg2zip.exe {f_path.strip()} {zRIF.strip()}')
        print(f'已经执行: {g_name}')
    else:
        print(f'执行失败: {g_name}')

def gameName(f_path):
    return f_path[f_path.rfind('/') + 1:]


def finds(game_id):
    fp = open(dbFile, 'r', encoding='utf8')
    temp = True
    res = []

    while temp:
        temp = fp.readline()
        arr = temp.split('\t')

        if arr[0] == game_id.strip() and \
           arr[3] != 'MISSING' and \
           arr[4] != 'MISSING':
            res.append([arr[3], arr[4]])

    fp.close()
    return res

def mode(num=0):
	if num == 0:
		return './PSV_GAMES_SC.tsv'
	elif num == 1:
		return './titles_psvdlcs.tsv'
	else:
		return './PSV_GAMES_SC.tsv'


if __name__ == '__main__':
    # gFile = './PSV_GAMES_PARSE_LIST.txt'
    # games = gp.readlines()
    	
    # for item in games:
    #     if item.startswith('#'):
    #         continue
    #     parser(item.strip())

    # gp.close()

    # load data file
    dbFile = mode(sys.argv[1])
    g_id = sys.argv[2]
    path = './'
    res = finds(g_id)

    if res:
	    for item in res:
	        g_name = gameName(item[0])
	        if exists(g_name):
	            pkg2zip(join(path, g_name), item[1])
	        else:
	        	print('Please download relative file before run this parser of python!')
    else:
        print('Relative file is missing in database. Please upload the latest data file.')
@echo off
: python	PkgsParserTsv.py 	pkg type num	pkg id num
: 0: game soft	1: game dlc soft
python PkgsParserTsv.py 0 PCSG00905
pause

The file parser for PKG format.PNG
PSV 基本的游戏下载方式_第8张图片
下载地址

PSV 工具下载地址.

结束语

~~今を生きている~~
不足之处,敬请诸君提点,谢~

你可能感兴趣的:(下载方法分析,游戏机,游戏)