维护提醒

BWIKI 全站将于 9 月 3 日(全天)进行维护,期间无法编辑任何页面或发布新的评论。

全站通知:

模组:玩家贴图

来自星露谷物语维基
跳到导航 跳到搜索

模组:目录

相关文件位置

所有农夫贴图都存储在 "Content/Characters/Farmer" 中。其中男性玩家的主贴图为 "farmer_base.xnb",女性玩家的主贴图为 "farmer_girl_base.xnb"。

图层

农夫贴图会绘制在几个不同的图层中。最底层为头部、躯干和鞋子。衣服、配饰、头发和其他东西会按如下顺序绘制:

  1. 头部/躯干/鞋子 - 最底层
  2. 裤子
  3. 上衣
  4. 配饰(例如眼镜、妆饰、耳环、面部毛发等)
  5. 头发
  6. 帽子
  7. 手臂 - 最顶层

其他文件中存储的图层叠放信息(例如某件上衣在身体上的高度)依赖于动画,且无法通过编辑 png 文件被修改,除非改变相应帧的内容。

农夫基础贴图(女)

农夫基础贴图分为三部分。其中头部/躯干/鞋子图层位于最左侧的六列。裤子位于最右侧的六列。手臂占据了中央的 12 列。每张贴图都 16 像素宽,32 像素高。

贴图的排序似乎是相当合理的,上面一行的六个裤子与上面一行的六个躯干对齐,其余部分也类似地排列下去。

对于默认的上衣和裤子,没有必要绘制一个完整的躯干,因为衬衫遮住了大部分躯干。裤子也遮住了躯干层上腿部应该出现的所有位置。然而,对于添加更多衬衫和裤子服装选项的模组来说,可能需要绘制更多的躯干并在基础农夫层添加腿部。

调色板

在编辑农夫基础形象时,使用合适的颜色调色板非常重要。游戏通过颜色来识别农民基础形象中的皮肤、眼睛、靴子、裤子、手臂和衬衫袖子。游戏会根据角色创建过程中选择的选项以及所穿靴子的颜色来重新着色这些部位。

上衣尺寸差异

虽然躯干的宽度可以达到 16 像素,但上衣(存储在一个单独的文件中)的宽度只有 8x8,无法完全覆盖比这更宽的躯干。不过,帽子、配饰和裤子都提供了 16 像素宽的列来覆盖头部和腿部。

帽子和发型

农夫戴上帽子可能会改变发型来源

  • 发型 3 会变到发型 11
  • 发型 22 和 26 会变更到发型 7
  • 发型 18、19、21 和 31 会变更到发型 23
  • 发型 0、2、4、7(?)、8、10、12、13、14、15 和 16 会变更到发型 30
  • 发型 1、5、6、9、11、17、20、23、24、25、27、28、29 和 30 保持不变

注意:发型 7 变到 30 可能会很奇怪,因此也可能不变。

贴图索引分解

如上所述,裤子、头部/躯干/靴子和手臂似乎都是对齐的。由于以下所有信息都是专门针对裤子进行测试的,因此插图将涵盖裤子,但也很可能涵盖头部/躯干/靴子和手臂。

记号

此处使用的记号为 R1F1 = 第 1 行第 1 帧,以此类推。在代码中(位于 FarmerSprite.cs),帧编号从 0 开始并按顺序递增。此编码方式会附在行-帧记号之后,并在 @ 符号后面附上每帧的持续时间。例如 1@60 代表第 1 行第 2 帧持续时长为 60。

在下面的笔记中,“下”指农夫面朝下方(面朝屏幕),“上”指农夫面朝上方(背对屏幕)。左和右是相对于玩家而言的(屏幕左边/屏幕右边)。因为左右镜像对称,因此我们总是将其一并论述。玩家面向右侧是未经镜像翻转的贴图,而面向左侧是翻转后的贴图。

对于附带的图片,由于尺寸较大,所以以小尺寸显示,但如果您点击查看,可以看到更大的尺寸。男性农夫一方是被灰色遮住,因为本分析是以女性农夫为基础进行的,但应该完全类似。底部有一个额外的小贴图,用于显示裤子在物品栏中的贴图。

农夫移动

走路

面朝下:R1F1, R1F2, R1F1, R1F3, 重复 (帧索引 0@200, 1@200, 0@200, 2@200, 重复)眨眼贴图的一部分是从一个起点为 X=5、Y=16 ,宽 6px 高 2px 的矩形绘制的。该矩形位于 R1F1 的躯干部位。

面朝左右: R2F1, R2F2, R2F1, R2F3, 重复 (帧索引 6@200, 7@200, 6@200, 8@200, 重复)

面朝上: R3F1, R3F2, R3F1, R3F3, 重复 (帧索引 12@200, 13@200, 12@200, 14@200, 重复)

Walking sprites.png

跑步

面朝下:R1F1, R1F2, R4F1, R1F2, R1F1, R1F3, R4F2, R1F3, 重复 (帧索引 0@90, 1@60, 18@120, 1@60, 0@90, 2@60, 19@120, 2@60, 重复)

面朝左右:R2F1, R4F4, R3F6, R2F1, R4F3, R2F6, 重复 (帧索引 6@90, 21@140, 17@100, 6@90, 20@140, 11@100, 重复)

面朝上:R3F1, R3F2, R4F5, R3F2, R3F1, R3F3, R4F6, R3F3, 重复 (帧索引 12@90, 13@60, 22@120, 13@60, 12@90, 14@60, 23@120, 14@60, 重复)

Running sprites.png

收获作物

面朝下:R10F1, R10F2, R10F3, R10F4 (帧索引 54@100, 55@100, 56@100, 57@100)

面朝左右:R10F5, R10F6, R11F1, R11F2 (帧索引 58@100, 59@100, 60@100, 61@100)

面朝上:R11F3, R11F4, R11F5, R11F6 (帧索引 62@100, 63@100, 64@100, 65@100)

Harvesting sprites.png

进食饮水

进食和饮水仅有面朝下的贴图。

进食:R15F1, R15F2, R15F3, R15F4, R15F5, R15F4, R15F5, R15F4 (帧索引 84@250, 85@400, 86@401, 87@250, 88@250, 87@250, 88@250, 87@250, 0@250)

注意:食用星之果实占用的是帧 84 ,持续时间 1000。

文件:Eating sprites.png

饮水:R16F1, R16F2, R16F3, R16F4, R16F3, R16F4, R16F3, R16F4, R16F2, R16F1 (帧索引 90@250, 91@150, 92@250, 93@200, 92@250, 93@200, 92@250, 93@200, 91@250, 90@50)

文件:Drinking sprites.png

骑马

面朝下:R18F6 (帧索引 107)

面朝左右:R18F5 (帧索引 106)

面朝上:R19F6 (帧索引 113)

Horse riding sprites.png

坐下

面朝下:R18F6 (帧索引 107)

面朝左右:R20F4 (帧索引 117)

面朝上:R19F6 (帧索引 113)

Sitting sprites.png

基本工具和武器的使用

重工具

注意:当工具被施加了迅捷附魔时,所有帧的速度都会加快0.66倍。倒数第二帧(第69帧,或第51帧,或)会额外持续 30*toolPower 的时间,其中 toolPower 反映了所持的升级锄头或洒水壶的等级(例如,显示3个方块 = 等级1)。这些设置都非常繁琐且令人烦恼。

斧头/十字镐/锄头/棍棒特技 面朝下:R12F1, R12F2, R12F3, R12F4, R12F5, 循环一次 (帧索引 66@150, 67@40, 68@40, 69@170, 70@75)

升级后的锄头,面朝下蓄力:R12F1(地块亮起之前), R13F3(出现 >3 个地块之前), R13F4 (释放之前), 然后是正常工具动画 (帧索引 66, 74, 75)

斧头/十字镐/锄头/棍棒特技 面朝左右:R9F1, R9F2, R9F3, R9F4, R9F5, 循环一次 (帧索引 48@100, 49@40, 50@40, 51@220, 52@75)

升级后的锄头,面朝左右蓄力:R9F1 (地块亮起之前), R13F1(出现 >3 个地块之前), R13F2 (释放之前), 然后是正常工具动画 (帧索引 48, 72, 73)

斧头/十字镐/锄头/棍棒特技 面朝上:R7F1, R7F2, R7F3, R11F4, R11F3, 循环一次 (帧索引 36@100, 37@40, 38@40, 63@220, 62@75)

举起升级锄头:R7F1(地块亮起之前)、R13F5(出现 >3 个地块之前)、R13F6(释放之前)、正常工具动画 (帧索引 36, 76, 77)

Tool sprites.png

镰刀/近战武器

此处 swipeSpeed 依赖于武器速度。

swipeSpeed = 6.5 * (10 - (weapon speed + farmer added speed)) * (1 - (farmer weapon speed modifier))

棍: swipeSpeed = 10.4 * (10 - (weapon speed + farmer added speed)) * (1 - (farmer weapon speed modifier))

镰刀/面向下近战:R5F1, R5F2, R5F3, R5F4, R5F5, R5F6, cycles once (帧索引 24@55, 25@45, 26@25, 27@25, 28@25, 29@swipeSpeed)

镰刀/面向左右近战:R6F1, R6F2, R6F3, R6F4, R6F5, R6F6, cycles once (帧索引 30@55, 31@45, 32@25, 33@25, 34@25, 35@swipeSpeed)

镰刀/面向上近战:R7F1, R7F2, R7F3, R7F4, R7F5, R7F6, cycles once (帧索引 36@55, 37@45, 38@25, 39@25, 40@25, 41@swipeSpeed)

Melee sprites.png

匕首

匕首 swipeSpeed = 10 * (10 - (weapon speed + farmer added speed)) * (1 - (farmer weapon speed modifier))

不确定匕首的 swipeSpeed 具体有何用处。很可能其是作为区间传入的。

面朝下使用匕首:R5F2, R5F4 (帧索引 25@interval, 27@interval)

面朝左右使用匕首:R6F5, R6F4 (帧索引 34@interval, 33@interval)

面朝上使用匕首:R7F5, R7F3 (帧索引 40@interval, 38@interval)

特殊:快速刺几下匕首。

水壶

面朝下:R10F1, R10F2, R5F2, 循环一次 (帧索引 54@75, 55@100, 25@500)

面朝左右:R10F5, R10F6, R8F4, 循环一次 (帧索引 58@75, 59@100, 45@500)

面朝上:R11F3, R11F4, R8F5, 循环一次 (帧索引 62@75, 63@100, 46@500)

Watering sprites.png

剑格挡

面朝下:R5F5, 保持 (帧索引 28)

面朝左右:R6F5, 保持 (帧索引 34)

面朝上:R7F5, 保持 (帧索引 40)

Sword block sprites.png

弹弓

说明:我认为弹弓的手臂很奇怪。它们显然看上去很怪,而且我认为它们破坏了正常的网格格式。

面朝下:R8F1 (帧索引 42)

面朝左右:R8F2 (帧索引 43)

面朝上:R8F3 (帧索引 44)

Slingshot sprites.png

钓鱼

抛竿

抛竿贴图描述了农夫抛出鱼线(按下鼠标不放,使得农夫头顶的蓄力条变化),以及松开鼠标后一瞬间的动画:

面朝下:R12F1, 保持, 重工具动画的余下部分 (帧索引 66@100, 67@40, 68@40, 69@80, 70@200)

面朝左右:R9F1, 保持, 然后 R9F2, R9F3, R9F4, R9F5 (帧索引 48@100, 49@40, 50@40, 51@80, 52@200)

面朝上:R13F5, 保持, 然后 R7F3, R11F4, R11F3, 重复后两帧 (帧索引 76@100, 38@40, 63@40, 62@80, 63@200)

Casting sprites.png

垂钓

这是指农夫已经抛竿、等待上钩的情形。

面朝下:R12F5, 保持 (帧索引 70)

面朝左右:R15F6, 保持 (帧索引 91)

面朝上:R8F3, 保持 (帧索引 44)

Fishing sprites.png

收竿

这是农夫正在玩钓鱼小游戏的贴图。

面朝下:R12F1, 保持 (帧索引 66)

面朝左右:R9F1, 保持 (帧索引 48)

面朝上:R7F1, 保持 (帧索引 36)

文件:Reeling sprites.png

捕鱼成功

此贴图用于捕鱼成功、收起钓竿并把鱼举起来展示的情形。

面朝下:R13F3, R10F4, R15F1 (帧索引 74, 57, 84)

面朝左右:R13F1, 然后农夫切换到面朝下 R10F4, R15F1 (帧索引 72, 57, 84)

面朝上:R13F5, 然后农夫切换到面朝下, R10F4, R15F1 (帧索引 76, 57, 84)

Caught fish sprites.png

使用其他工具

淘盘

淘盘仅能用于农夫面朝下的情况(面向屏幕):

面朝下 R21F4, R21F5, R21F4, R21F6, 重复 3 次, R21F4, R21F5, R21F4 (帧索引 123@150, 124@150, 123@150, 125@150, 123@150, 124@150, 123@150, 125@150, 123@150, 124@150, 123@150, 125@150, 123@150, 124@150, 123@500)

文件:Panning sprites.png

挤奶

面朝下:R10F1, R10F2, 共重复两次 (帧索引 54@400, 55@400, 54@400, 55@400)

面朝左右:R10F5, R10F6, 共重复两次 (帧索引 58@400, 59@400, 58@400, 59@400)

面朝上:R11F3, R11F4, 共重复两次 (帧索引 56@400, 57@400, 56@400, 57@400)

Milking sprites.png

剪羊毛

面朝下:R14F1, R14F2, 共重复 2 次 (帧索引 78@400, 79@400, 78@400, 79@400)

面朝左右:R14F3, R14F4, 共重复 2 次 (帧索引 80@400, 81@400, 80@400, 81@400)

面朝上:R14F5, R14F6, 共重复 2 次 (帧索引 82@400, 83@400, 82@400, 83@400)

Shearing sprites.png

杂项

晕倒

农夫能量过低晕倒、凌晨两点晕倒以及生命值过低晕倒似乎使用了同一套动画,但没有验证生命值的情况。

晕倒:R3F5, R1F1, R3F5, R1F5, R1F6 (帧索引 16@1000, 0@500, 16@1000, 4@200, 5@6000)

文件:Passing out sprites.png

恶心

此贴图用于农夫使用有毒物品或某些过场动画。必须面朝下。

恶心:R18F3, R18F4, 重复数次 (帧索引 104@350, 105@350, 104@350, 105@350, 104@350, 105@350, 104@350, 105@350)

Nausea sprites.png

亲吻

此贴图用于婚礼、亲吻配偶和某些过场动画中。

亲吻:R17F6 (帧索引 101)

Kissing sprites.png

花舞节

此贴图既可以朝上也可以朝下,取决于共舞的 NPC。

面朝下:R1F1, R1F5, 重复, R1F1, R1F4, 重复 (帧索引 0, 4, etc, 0, 3, etc)

面朝上:R3F1, R3F2, R3F1, R3F3, 以不同速度重复 (帧索引 12, 13, 12, 14, etc)

Flower dance sprites.png

浴衣

每个裤子的 .png 都有对应的浴衣贴图,以反映裤子颜色。

面朝下:R19F1, R19F2, R19F1, R19F3 (帧索引 108, 109, 108, 110)

面朝左右:R20F1, R20F2, R20F1, R20F3 (帧索引 114, 115, 114, 116)

面朝上:R21F1, R21F2, R21F1, R21F3 (帧索引 120, 121, 120, 122)

Bathing suit sprites.png

过场动画

这是用于不同过场动画的各种农夫贴图和动画。其中许多贴图出现在不止一个动画中,但是少数贴图为某些动画专用的。

伸手(用于海莉的暗室事件、乔治的遥控器事件):R3F4 (帧索引 15)

坐下,伤心(用于亚历克斯的母亲事件):R16F6 (帧索引 95)

伤心/疑惑(用于阿比盖尔的游戏事件):R17F1 (帧索引 96)

挠头/难为情(用于阿比盖尔的游戏事件,以及其他某些事件):R17F2 (帧索引 97)

弹奏竖琴(用于阿比盖尔的长笛动画):R17F3, R17F4, R17F5 (帧索引 98, 99, 100)

大笑(用于各种过程动画):R18F1, R18F2 (帧索引 102, 103)

打开管子(用于海莉的罐子事件):R19F4, R19F5 (帧索引 111, 112)

Event sprites.png

未知帧

有四个无法识别的帧,如下,其包括头部/躯干/鞋子和手臂,以及对应的帧索引。

Unknown Sprites.png