I also made a pull request on GitHub (if it’s easier that way).
Spoiler:
Show
{ "$schema": "https://smapi.io/schemas/i18n.json", "b-c.trinket-colorizer.name": "Colorisateur de bibelots", "b-c.trinket-colorizer.description": "Vous permet de changer la couleur des bibelots, modifiant leur apparence. Coûte 15 Géode-omni par utilisation.", "b-c.trinket-colorizer.invalid-count": "Nécessite 15 Géode-omni.", "b-c.trinket-colorizer.no-recolor": "Ce bibelot ne peut pas changer de couleur.", }
{ "$schema": "https://smapi.io/schemas/i18n.json", "b-c.trinket-colorizer.name": "Colorisateur de bibelots", "b-c.trinket-colorizer.description": "Vous permet de changer la couleur des bibelots, modifiant leur apparence. Coûte 15 Géode-omni par utilisation.", "b-c.trinket-colorizer.invalid-count": "Nécessite 15 Géode-omni.", "b-c.trinket-colorizer.no-recolor": "Ce bibelot ne peut pas changer de couleur.", "effect.not-allowed": "Vous n'êtes pas digne de {{trinketName}}...", "config.section.general": "Général", "config.HideAllCompanionsDuringEvents.name": "Cacher pendant les événements", "config.HideAllCompanionsDuringEvents.description": "Cachez tous les compagnons de bibelot lors des événements. Affecte uniquement les bibelots ajoutées via Trinket Tinker.", "config.section.keybindings": "Raccourcis", "config.DoInteractKey.name": "Interagir avec le compagnon", "config.DoInteractKey.description": "Appuyez sur cette touche pour activer toutes les capacités d'interaction sur votre compagnon, lorsue que vous êtes assez proche.", "config.OpenTinkerInventoryKey.name": "Ouvrir l’inventaire des bibelots", "config.OpenTinkerInventoryKey.description": "Appuyez sur cette touche pour ouvrir l'inventaire de votre ou vos bibelot(s) équipés.", "config.TinkerInventoryNextKey.name": "Inventaire de bibelot suivant", "config.TinkerInventoryNextKey.description": "Losqu'un inventaire de bibelot est ouvert et que plusieurs bibelots avec inventaire sont équipés, appuyez sur ceci pour accéder à l'inventaire suivant.", "config.TinkerInventoryPrevKey.name": "Inventaire de bibelot précédent", "config.TinkerInventoryPrevKey.description": "Bien qu'un inventaire Tinker soit ouvert et que plusieurs bibelots avec inventaire soient équipés, appuyez sur ceci pour accéder à l'inventaire précédent.", "config.section.debug": "Déboguer", "config.DrawDebugMode.name": "Activer le mode de débogage", "config.DrawDebugMode.description": "Afficher le numéro de frame du compagnon et la boîte de délimitation." }
From the Pack Possum and Critter Cages mod: When equipping the parrots - and I assume sleeping based on someone else's comment - I now have two permanent parrots flying around me. I haven't really tested if they're doing anything, but regardless, they won't go away even when the critter cage is removed.
I'm not a mod maker, but I use a bunch of mods that utilize this framework and I just wanted to say that I think its one of the best frameworks to come out of 1.6. The mods it's allowed to exist are fantastic, and I always get excited whenever a new one drops. Thanks for making them possible!
This means a lot to me thank you! I am also excited to see people using the framework as there's always usecases I never thought of during development, people are so creative.
Hello, may I ask if there is a way to add the hit effect of the projectile? Currently, it seems impossible to do so.XD (For example, in the game, when the arrows shot from the magic quiver hit the target, some particle effects will be generated) (Sorry, I used machine translation and the expression may be incorrect)
There's some support for that yes, you need to define a temporary animated sprite that you put in the ProcTAS field on ability, the TAS of a hitscan/projectile attack is displayed at the enemy instead of the companion/player, I had forgotten to document this oops.
Android issue, this code got trimmed it looks like. Please report the problem to the android smapi dev. Broken code in TrinketTinker.dll: reference to StardewValley.ISoundBank.Exists (no such method), reference to StardewValley.Menus.InventoryMenu.SetPosition (no such method), reference to StardewValley.Menus.ItemGrabMenu.storageSpaceTopBorderOffset (no such field).
1.5.6 resolved enough of this so that trinket tinker should at least load on android, but the inventory feature don't work and will not be fixed for time being since it's due to UI differences between pc and mobile.
TrinketTinker 1.5.4 because it needs Stardew Valley 1.6.15 or later. Please update your game to the latest version to use this mod 我的星露谷已经是Steam最新版本,为什么还会有这样的提示?
I'm excited to see what Trinket Tinker's capable of now with the new companions! I'm still examining the author's guide but am I correct in understanding that companions' combat attacks against enemies currently don't have support for causing special effects on enemies besides explosions? RPG-type debuff stuff like damage over time, slowing or freezing like the vanilla ice rod, turning enemies friendly, that sort of thing? Because I'm hoping to one day see a bevy of different companions that can support the player in different ways like that!
Freezing Enemy: this is called "Stun" in the documentation, Sinister Servants has a example (Spider), there is no slowing enemy implemented
Damage over Time: hm not sure about this one, I suppose you can fake it with a series of delayed sync proc hitscan abilities, perhaps future addition
Turn Enemies friendly: this is unlikely to happen, due to the limitations of the vanilla monster system
If you are able/willing to do some C#, you can implement custom actions in C# to use with the Action ability and still be able to use the rest of trinket tinker.
This mod is in desperate need of a complete example pack provided by the author, especially as it gets more and more complex. Being forced to rely on existing mods with varying levels of feature-completeness (especially for those who learn better from examples over pure documentation) is a huge mark against its usefulness.
I made 3 example packs, 2 of which are actual playable mods: https://github.com/Mushymato/TrinketTinker You can ask here if there's anything confusing, or any particular feature you aren't sure how to do.
If you're not keeping your example packs up to date with new features (like the recent update's NPC Adventures-ish stuff), then they're simply not as useful as you'd think. I'll still have to wait for new mods (or updates to existing ones) in order to see everything your mod is capable of.
This pack concerns the NPC style trinkets, but I would like to remind you that I am one person and I can only do so much in 2 weeks. If you would like to help make more examples, feel free to contribute (MIT License).
104 comments
https://smapi.io/json/i18n/64ec92324c95448aa07da55ce39e181b
I also made a pull request on GitHub (if it’s easier that way).
{
"$schema": "https://smapi.io/schemas/i18n.json",
"b-c.trinket-colorizer.name": "Colorisateur de bibelots",
"b-c.trinket-colorizer.description": "Vous permet de changer la couleur des bibelots, modifiant leur apparence. Coûte 15 Géode-omni par utilisation.",
"b-c.trinket-colorizer.invalid-count": "Nécessite 15 Géode-omni.",
"b-c.trinket-colorizer.no-recolor": "Ce bibelot ne peut pas changer de couleur.",
}
Thanks for your mod, have a good day !
https://smapi.io/json/i18n/340b6999f3404090a4823566dd8b2bde
{
"$schema": "https://smapi.io/schemas/i18n.json",
"b-c.trinket-colorizer.name": "Colorisateur de bibelots",
"b-c.trinket-colorizer.description": "Vous permet de changer la couleur
des bibelots, modifiant leur apparence. Coûte 15 Géode-omni par
utilisation.",
"b-c.trinket-colorizer.invalid-count": "Nécessite 15 Géode-omni.",
"b-c.trinket-colorizer.no-recolor": "Ce bibelot ne peut pas changer de couleur.",
"effect.not-allowed": "Vous n'êtes pas digne de {{trinketName}}...",
"config.section.general": "Général",
"config.HideAllCompanionsDuringEvents.name": "Cacher pendant les événements",
"config.HideAllCompanionsDuringEvents.description": "Cachez tous les
compagnons de bibelot lors des événements. Affecte uniquement les
bibelots ajoutées via Trinket Tinker.",
"config.section.keybindings": "Raccourcis",
"config.DoInteractKey.name": "Interagir avec le compagnon",
"config.DoInteractKey.description": "Appuyez sur cette touche pour
activer toutes les capacités d'interaction sur votre compagnon, lorsue
que vous êtes assez proche.",
"config.OpenTinkerInventoryKey.name": "Ouvrir l’inventaire des bibelots",
"config.OpenTinkerInventoryKey.description": "Appuyez sur cette touche
pour ouvrir l'inventaire de votre ou vos bibelot(s) équipés.",
"config.TinkerInventoryNextKey.name": "Inventaire de bibelot suivant",
"config.TinkerInventoryNextKey.description": "Losqu'un inventaire de
bibelot est ouvert et que plusieurs bibelots avec inventaire sont
équipés, appuyez sur ceci pour accéder à l'inventaire suivant.",
"config.TinkerInventoryPrevKey.name": "Inventaire de bibelot précédent",
"config.TinkerInventoryPrevKey.description": "Bien qu'un inventaire
Tinker soit ouvert et que plusieurs bibelots avec inventaire soient
équipés, appuyez sur ceci pour accéder à l'inventaire précédent.",
"config.section.debug": "Déboguer",
"config.DrawDebugMode.name": "Activer le mode de débogage",
"config.DrawDebugMode.description": "Afficher le numéro de frame du compagnon et la boîte de délimitation."
}
不太理解Anchor Mode中地形这一段,如果希望NPC钓鱼可以用这个识别水边地形吗?
没有做钓鱼能力,最多可以用ItemDrop生成鱼
(For example, in the game, when the arrows shot from the magic quiver hit the target, some particle effects will be generated)
(Sorry, I used machine translation and the expression may be incorrect)
There's an example with the skull companion in Sinister Servants.
Just so you know, I do speak chinese (and translated all my own mods to chinese)
然后我还有一些别的想法。就是有没有一种办法,能够让饰品移动到怪物附近,比如300左右的位置,再使用投射物进行攻击。比如在使用 "Mode": "Monster"和"Offset":"300,300",时,确实能达成大致效果,但是常态跟随的时候也会偏移很远(还有一点,我找不到怎么消除这个饰品底下的阴影XD)
再举个大致的例子,假设索敌距离1500,攻击距离300(或者说是300的偏移),那么饰品会飞到怪半径300左右远的随机位置,再进行发射。(我的想法就是在使用 "Mode": "Monster"时,再增加一个专属的offset,或者说设定一个离怪物的距离,不知道可不可行,麻烦大佬了)
ProcTAS问题会看看怎么处理,你现在可以先两种攻击Ability都用,Hitscan设成Projectile的Sync Proc并在Projectile上加ProcSyncDelay
锁敌的话可以考虑把Lerp Motion的Min设高一点,不过我应该会提供可设置在Anchor的MinRange
另外一种方法是给projectile加Stun,之后你可以用StunTAS。详情见Sinister Servants的蜘蛛。
或者你等我更1.5.2提供OnHitTAS之类的功能
这个模组没有正式的C# API但是Action会给触发的TriggerAction提供一些关于饰品的信息,如随从位置,详见For SMAPI Mods。用这个可以在让TrinketTinker处理随从外观移动等功能时同时使用C#的自定义能力。
https://github.com/Mushymato/TrinketTinker/blob/main/TrinketTinker/Effects/Support/TinkerProjectile.cs#L223
Great job!
So...it says Trinket Tinker 1.5.3 no longer compatible, but! 1.5.3 is the latest version right? Am i missing something?
🥴
Broken code in TrinketTinker.dll: reference to StardewValley.ISoundBank.Exists (no such method), reference to StardewValley.Menus.InventoryMenu.SetPosition (no such method), reference to StardewValley.Menus.ItemGrabMenu.storageSpaceTopBorderOffset (no such field).
我的星露谷已经是Steam最新版本,为什么还会有这样的提示?
1.6.14 build 24317 on Microsoft Windows 10 专业版
- Freezing Enemy: this is called "Stun" in the documentation, Sinister Servants has a example (Spider), there is no slowing enemy implemented
- Damage over Time: hm not sure about this one, I suppose you can fake it with a series of delayed sync proc hitscan abilities, perhaps future addition
- Turn Enemies friendly: this is unlikely to happen, due to the limitations of the vanilla monster system
If you are able/willing to do some C#, you can implement custom actions in C# to use with the Action ability and still be able to use the rest of trinket tinker.You can ask here if there's anything confusing, or any particular feature you aren't sure how to do.