Skip to content

USN484259/medium5game

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

medium5game

Version 0.1.0

About

Fan game for Medium 5 layout
Inspired by @朦朦的卡比兽 【五维介质】主角成员们的能力设定
'Medium 5' 'Stardust' etc are Trademarks held by Beijing Photek S&T Development Co. Ltd.
Initial design see medium_5_design.cpp

关于

五维介质同人游戏
受到 @朦朦的卡比兽 的专栏启发 【五维介质】主角成员们的能力设定
五维介质 星尘 等注册商标为 北京福托科技开发有限责任公司 所有
初稿设计见文件 medium_5_design.cpp

依赖库

运行

Linux

  1. 安装Lua5.3,以Ubuntu/Debian为例,sudo apt install lua5.3

    • 也可从Lua官网下载源码,自行编译
  2. 下载或clone本项目,进入项目目录

  3. 下载 lua_platform.so,并放在项目目录下

    • 也可在项目目录下运行 make 自行编译库 lua_platform.so
  4. 获取其他依赖库

    • clone依赖库,运行make,将生成的库文件链接到本项目根目录下
  5. 下载游戏资源,解包到项目根目录

  6. ./game.lua 启动游戏。需要给予 game.lua 执行权限

    • 也可手动指定lua路径。$PATH_TO_LUA_5_3 game.lua

Windows (暂不可用)

目前来不及研究Windows平台的编译。本项目及其所有依赖均是跨平台的,可自行尝试进行移植。
作为参考,前一个版本的Windows平台运行方式如下

  1. 下载或clone本项目
  2. 下载 lua5.3.exeliblua.dll ,并放在项目目录下。此程序使用 Lua5.3官方源码Windows SDK 10.0.22000.0 编译,以支持切换UTF-8编码,从而正确显示中文字符。
  3. 下载 lua_platform.dll,并放在项目目录下
  • 也可在项目目录下使用 MinGW 运行 export PLAT=mingw; export LUALIB_PATH=<path-to-lua-headers>; make 自行编译库 lua_platform.dll
  1. Windows应用商店 安装 Windows Terminal,以支持文本颜色。
  2. 在项目目录下启动 Windows Terminal ,输入lua5.3.exe game.lua启动游戏

游戏机制

其中包含了很多代码实现细节,主要用于帮助理解,不必深究。

地图和回合

六边形地图。地图坐标表示为(d, i),其中d代表与中心的距离(即层数),i代表当前层中的位置。 方向用数字1到6表示,其中方向1为i=0的地图格所在的方向。图中方向1指向右方,逆时针方向增加。

回合制游戏,游戏中包含多个队,影响大部分技能和效果造成的伤害或者影响。例如,大部分伤害技能不会伤害到同队的成员。队0为“自然”,代表自然环境或者带有友伤的效果。回合以队为单位进行,即队A回合开始,角色行动,回合结束后,队B的回合开始。

实体和角色

实体占据一个地图格,包含队编号、生命值、元素抗性等属性。一个地图格中至多只能有一个实体。部分实体可以按照一定规则向空的地图格移动

  • 生命值:角色承受攻击的能力,到达0时实体将离开地图。一般情况下实体的生命值不会超过其最大生命值。
  • 元素抗性:对不同元素攻击的抵挡能力。0代表该元素的攻击造成正常伤害,1代表完全免疫该元素攻击。负值代表该元素攻击会造成额外伤害。

角色是一种实体,还包含理智值、力量值、速度/精准值、能量槽、物品栏、技能列表等属性。玩家可以操控自己队的角色。

  • 理智:角色的清醒程度,仍在开发中。
  • 力量:角色的攻击强度,默认攻击伤害表示为该数值的百分比。力量较低时部分技能将无法使用。
  • 速度:角色闪避攻击的能力。目前与角色一回合移动的格数没有关联。
  • 精准:角色攻击命中的能力。与目标速度的差值决定了命中率。
  • 能量槽:包含当前能量、能量上限、每回合能量产生。大部分技能需要消耗能量,角色默认能量上限1000,每回合能量产生100。
  • 物品栏:包含角色的武器和其他物品。部分物品有冷却时间,部分物品有多个不同的模式。

地图层

层的概念类似于 图层,地图上有多个不同的层,记录不同元素的效果对处于其中的实体的影响:

  • 光层包含多个能量源,星尘每回合获得的能量和自身到这些能量源的距离有关。星尘的终极技能会引爆能量源并造成连锁反应。
  • 气层中的气流会将部分投掷物(如赤羽的羽毛)的施放目标向气流方向移动。苍穹的终极技能会在气层中形成风暴。
  • 火层包含了地面上燃烧的火焰,处于火焰中的敌方角色会被点燃。赤羽的多个技能会在地上形成火焰。
  • 水层包含了每个地图格的水深。实体处于水中时会附着潮湿,大部分实体在深水中会溺水。海伊不会溺水,站在水中时部分技能会得到加强,并可以消耗周围的水进行攻击。海伊的终极技能会在水层中形成暴雨。
  • 目前暂时没有岩层

技能

角色拥有多个技能。大部分技能存在冷却时间,部分技能需要消耗能量释放,部分技能还依赖于特定物品的状态。有些技能使用后本回合该角色就不能再行动,而另一些技能在使用后仅该技能在本回合无法再使用。 技能主要有以下几个类别。有一些技能在特定的条件下类别、威力、能量消耗等参数会发生变化。

  • 路径:包含一个或多个方向,角色将依次按照指示的方向在地图上移动
  • 目标:包含一个或多个坐标。依照技能不同,会在指定目标位置造成伤害、添加效果、或者将角色自身传送至目标位置
  • 方向:包含一个方向,角色会向该方向释放技能。
  • 切换:无参数,一般用于调整角色自身或者武器的模式
  • 效果:无参数,依照技能不同,会改变角色的部分属性,或者以角色为中心释放技能
  • 矢量:包含一个方向和一个距离,角色会向该方向移动指定距离,并对沿途造成影响
  • 直线:包含一个坐标和一个方向。角色会从指定位置开始,向指定方向释放技能

效果

效果附着在实体上,影响实体属性或者造成伤害,一般有持续时间。部分效果会相互影响。

  • 击倒,实体被击倒时,速度与力量为0,抗性减半,回合内不产生能量,技能和物品冷却不减少,也不能行动。
  • 阻碍,实体受到阻碍,力量值降低(与阻碍强度有关)。阻碍强度高时实体的速度和抗性也会降低
  • 溺水,当无法飞行的实体处于水深大于1000的地图格时会溺水,每回合损失25%最大生命值
  • 点燃,实体被点燃时每回合会受到火元素伤害,可被潮湿或气泡熄灭
  • 潮湿,实体处于水中时附着,可熄灭点燃,部分角色的属性受潮湿影响
  • 水泡,附着潮湿,用于熄灭点燃时水泡损失。水泡附着于队友时,免疫溺水伤害,并1:1消耗强度吸收50%伤害,可吸收效果伤害,不影响真实伤害;附着于敌方时施加阻碍,被引爆时造成100%水元素伤害。

角色介绍

诗岸

属性

属性
元素
生命值 700
力量 200
速度 3
精准 3
元素抗性
物理 0.6
0.8
0.6
0.7
0.9
0.5
  • 诗岸无法被点燃

物品

  1. 岩铠三号。诗岸的武器是巨盾,可变形为巨锤。
  2. 禁忌Apple。来自伊甸园的禁果,可以提高自身部分属性和能量产生,但会对精神造成影响。冷却时间5

技能

  1. 移动(路径)。诗岸每次仅能移动1格,且移动后不能再行动。盾形态下移动有1回合的冷却,且能量消耗高于锤形态
  2. 重锤/尖石攻击(方向)。锤形态下诗岸朝指定方向砸下,对目标造成200%物理伤害(无法对空)并击倒目标,对半径1造成40%物理伤害。盾形态下诗岸向指定方向召唤地刺,在宽3长2范围内造成50%物理伤害并阻碍目标,无法对空。
  3. 形态切换(切换)。诗岸的武器在盾形态/锤形态之间切换。盾形态下诗岸自身和周围的队友会受到保护。盾消耗诗岸1能量吸收2攻击,不影响真实伤害和效果伤害。诗岸无能量时盾不起作用。
  4. 岩石加农炮(目标),射程5,仅锤形态下可用。诗岸将一块巨石锤飞,对目标造成200%物理伤害(空中目标为400%)并击倒目标,对半径1造成40%物理伤害。
  5. 禁忌Apple Dance(效果)。诗岸使用禁忌Apple,获得部分属性和能量产生的提升,同时持续受到精神伤害。
  6. 最后的守护(效果),终极技能。诗岸舍弃一切暂借神力,自身和全场队友受到保护,持续4回合。期间诗岸不再产生能量,也不能行动,自身和所有队友受到的伤害(除真实伤害)均被完全吸收。消耗诗岸1能量吸收2伤害,能量不足时吸收的伤害减半后转移到诗岸身上。诗岸在技能作用过程中即使生命值到达或者小于0也不会退场,技能作用结束后,若诗岸生命值到达或小于0则会立即退场。

赤羽

属性

属性
元素
生命值 800
力量 120
速度 7
精准 8
元素抗性
物理 0.2
0.7
-0.2
0.3
0
0
  • 赤羽无法被点燃

物品

  1. 业火余烬。赤羽的武器是长刀。赤羽使用武器攻击敌人时会积累热量,击杀敌人时能回复部分生命值(与敌人最大生命值有关)并获得额外热量。积累的热量能够增强赤羽的力量,但过高的热量会伤害赤羽的精神乃至生命值。赤羽每回合都能消散部分热量,处于风中或者身上潮湿时散热会加快。赤羽处于潮湿环境中时力量会降低到80%
  2. 菲尼克斯之羽。菲尼克斯的羽毛作为引火的材料,可以直接掷出引燃周围,也可在赤羽手中引燃,作为其终极技能的引信。冷却时间5

技能

  1. 移动(路径)。赤羽每回合可以移动2格,移动后还可再行动。
  2. 流刃若火(方向)。赤羽使用长刀向指定方向斩击,造成100%物理伤害并点燃目标。
  3. 闪焰冲锋(矢量),最大距离5。赤羽向指定方向冲锋,在指定距离后停止。对沿途造成100%火元素伤害并点燃目标,停止后对背后一格再造成200%物理伤害并击倒目标。
  4. 焚尽之羽(目标),射程4。赤羽将菲尼克斯之羽掷出,点燃范围内目标并引燃半径1的地面。羽毛能被气流带向远方。
  5. 烈焰风暴(方向)。赤羽让长刀附着火焰并向指定方向挥击,在宽3长1范围内造成100%物理伤害,在宽3长2范围内造成100%火元素伤害并点燃目标。
  6. 涅槃(目标)。在赤羽生命值低于30%时,赤羽能够选择一个目标进行传送,并在原位置引燃半径1的地面。
  7. 火凤焚天(矢量),终极技能。赤羽在手中引燃菲尼克斯之羽,随后化为火凤,向指定方向飞行指定距离。对沿途造成200%火焰伤害并点燃目标,对沿途的左右两侧造成100%火焰伤害并点燃目标,停止后对背后一格再造成200%火焰伤害和200%物理伤害并击倒目标。引燃以上区域的地面。

苍穹

属性

属性
元素
生命值 850
力量 100
速度 9
精准 9
元素抗性
物理 0
0
0
0.2
0
0
  • 除非被击倒,苍穹一直处于飞行状态。

物品

  1. 岚语。苍穹的武器是长弓。默认情况下,苍穹使用气元素制作箭矢。队友位于身边时,苍穹可以使用一名队友的元素制作箭矢。不同元素的箭矢具有不同的效果。
  2. 蝴蝶。苍穹可以放飞蝴蝶来探明一片区域,也可以让蝴蝶振动翅膀,引发自己的终极技能。冷却时间6

技能

  1. 移动(路径)。苍穹每回合可以移动3格,移动后还可再行动。
  2. 驭灵风矢(目标)。苍穹使用长弓发射元素箭矢,每根箭矢都造成100%物理伤害。不同的元素有不同的额外效果。
    • 气元素:可以同时发射两根箭矢(可相同目标),无额外效果。
    • 火元素:造成60火元素伤害并点燃目标
    • 岩元素:射程5,造成100%物理伤害
    • 水元素:造成100水元素伤害并附着水泡
    • 光元素:造成100光元素伤害(0%充能)并引爆充能
  3. 元素附魔(切换)。苍穹选择制作箭矢的元素。可用元素为气元素和回合开始时在身边的队友的元素
  4. 风暴之眼(目标)。苍穹放飞蝴蝶,探查目标区域。此技能还在开发中。
  5. 气流控制(直线),射程4。苍穹控制气元素,在指定位置向指定方向产生3格的气流,持续2回合。此技能同一回合可多次使用。
  6. 群青之空(效果)。苍穹向正上方发射箭矢,散射半径3的区域。不同的元素有不同的效果。
    • 气元素:造成150气元素伤害。
    • 火元素:造成100火元素伤害并引燃地面。
    • 岩元素:造成200物理伤害。
    • 水元素:造成100水元素伤害并附着水泡,回复队友20%或100生命值并附着水泡
    • 光元素:造成100光元素伤害(100%充能)并引爆充能
  7. 自由之风的轻吟(效果),终极技能。苍穹让蝴蝶振动翅膀,自己轻吟诗歌,自身为中心半径4形成风暴,持续3回合。期间苍穹不能行动,自身速度减半,其他队友速度和精准增加,敌方精准降低并受到阻碍。风暴中友方投掷物作用范围覆盖整个风暴,敌方投掷物消失。风暴每回合对敌方单位造成50%气元素伤害,对飞行单位额外造成100%气元素伤害。

星尘

属性

属性
元素
生命值 800
力量 100
速度 6
精准 7
元素抗性
物理 0.2
0.2
0.2
0.2
0.2
0.9
  • 星尘回合开始时获得的能量和光层中能量源的距离有关,星尘在回合结束时使用获得的能量依次对物品进行充能,多余的能量被舍弃,不带入下一回合。
  • 星尘的部分攻击造成伤害的同时,若目标没有光充能,则在目标上产生伤害数值一定比例的光充能,光充能每回合消散100;当目标已经被光充能时,将对目标额外产生光元素伤害,数值为目标光充能值加上本次攻击本应该产生的光充能数值的一半,目标的光充能被清除。

物品

  1. 星辰之矛。
  2. 星辰之矛。星尘身边显现的由光构成的矛,可以直接掷向目标,也可以掷向地面并引爆,触发星尘的终极技能。充能需要200
  3. 星光之镜。星尘头顶的圆镜,可以制造黑洞,也可以进行传送。充能需要800
  4. 星光四面体。星尘在星光四面体中积蓄能量,超过一半时就可以聚集光束并释放。充能需要2000

技能

  1. 移动(路径)。星尘在地面上时每次可以移动1格,不需要消耗能量。星尘处于悬浮状态时每次可以移动3格,每格消耗10能量。移动后还可再行动。
  2. 星辰双矛(目标),射程5。星尘向目标掷出矛,造成100%物理伤害(100%充能)并引爆充能。矛掷出后需要消耗能量重新生成。此技能同一回合可多次使用。
  3. 引力漂浮(切换)。星尘可以在悬浮模式和地面模式间切换。悬浮时每回合消耗40能量,回合开始时扣除,能量不足时将回到地面模式。
  4. 空间跃迁(目标/效果)。星尘使用星光之镜创造虫洞进行传送。在悬浮模式下,星光之镜消耗一半充能,星尘一人进行传送,在下一回合星尘可以选择再次通过虫洞返回;在地面模式下,星光之镜消耗全部充能,星尘可以携带身边的队友一起传送,队友的相对位置不变,落脚点被阻挡的队友不会被传送。
  5. 终焉归零(目标),射程6。星尘掷出星光之镜,在目标形成半径1的黑洞,持续2回合。黑洞范围内敌方投掷物和较小的敌人被吞噬,其他敌人持续受到较低物理伤害并受到阻碍。效果结束后星光之镜剩余25%充能回到星尘身边。
  6. 终极棱镜(方向)。星尘使用星光四面体向指定方向发射光束,对沿途造成星光四面体充能值一半的光元素伤害(50%充能)并引爆充能。星光四面体充能高于50%便可使用该技能,使用时消耗全部充能。
  7. 恒星坠落之时(目标),终极技能,星尘将星辰之矛向地面掷出,回合结束时星辰之矛被引爆,在半径2造成400%光元素伤害(无充能),同时引爆范围内所有能量源,每个能量源进行上述过程后消失,可形成连锁反应。此攻击对自身和队友同样造成伤害。使用此技能后星尘将虚弱(击倒)一回合。

海伊

属性

属性
元素
生命值 900
力量 80
速度 5
精准 6
元素抗性
物理 0.2
0.4
0.7
0.1
0.2
0.3
  • 海伊不会溺水,处于水中时力量变为2倍,部分技能会得到加强。

物品

  1. 绀海之源。海伊的武器是法杖,可以消耗能量产生水。海伊的大部分技能需要用到水,释放技能时,海伊优先使用半径1内环境中的水,不足时再使用水母储存的水。
  2. 水母。可以大量储存水,蓄水上限800,回合开始时,当海伊所处的格内水深超过50时,水母会吸收25%或100水。

技能

  1. 移动(路径/目标)。海伊没有接触水时,每次移动2格;海伊处于水中时,可以在同一水体中“传送”至多8步。移动后还可再行动。
  2. 水流冲击(目标)。海伊没有接触水时,射程3,对单个目标造成100%水元素伤害或100%治疗,并附着潮湿;当海伊处于水中时,射程6,可选择至多4个目标(不可相同目标),200%水元素伤害或治疗平均分配到每个目标,单个目标治疗上限为100%,每一个目标附着潮湿。可引爆水泡。
  3. 祈雨(效果)。海伊使用法杖,消耗80能量,产生50水并储存于水母中。
  4. 海之摇篮(目标)。海伊向目标发射水泡,水泡可被气流带向远方。海伊没有接触水时,射程2,每次产生1个水泡;海伊处于水中时,射程4,每次产生2个水泡(不可相同目标)。水泡具有100%强度,持续2回合。当目标处没有实体时,将产生一个水泡实体,具有100%生命值,水抗性0.4,火抗性-0.2,被击破或2回合后爆破,对1半径造成100%水元素伤害并附着潮湿。
  5. 复苏之触(方向/效果)。海伊使用法杖治愈队友,回复队友最大生命值的60%,可超过生命值上限。海伊没有接触水时,治愈身边的一名队友并附着水泡;海伊处于水中时,治愈同一水体中8步以内的一名队友并附着水泡。
  6. 泡影的咏叹调(效果),终极技能。海伊在半径4范围内创造暴雨,持续4回合,地面产生积水。技能作用时间内海伊仍然可以行动,始终处于水中,所有技能不消耗水。每回合对自身周围半径2造成50%水元素伤害或25%治疗,附着潮湿并引爆敌方水泡。处于暴雨中的实体每回合都会尝试附着水泡,敌方火元素投掷物会消失。

About

Fan game for Medium 5 layout

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published