Closed CollinHerber closed 4 months ago
Grimoire materials will have this "X consumed!" message instead of normal pickup because OnPickup returning false disables the normal text. It also should make it more clear that it's intentionally not going into the regular inventory.
Consumed is weird terminology but can't think of anything better at this time but yeah that makes total sense!
Ideally, I'd have a little like, ghostly laughing face for the Grimoire that appears when you "consume" a Grimoire material. I'd like to characterize the Grimoire such that it's alive and hungry in a way, and that the Terrarian just doesn't care because it's cool because that's what Terraria is about
Oo yeah that sounds neat! I like that idea
Quite a bit of progress. Still need to make the actual "sacrifice" and unlock part, but it's coming together.
When selecting a locked summon, it'll flash the requirements over the (not yet added) item slots. I'll probably make it last significantly longer, 1 second is a bit short.
Might want to consider just drawing them with grayscale and/or lower transparency (blinking/flashing might get a little irritating - in the long run, idk though...)
Yea I was thinking like a grayscale version item slot thing. Don't know how I feel about the blinking/flashing
Longer duration. The idea here was to not hide the item slots, once I add them, but still hint towards the items required. That saves players from doing something like clicking on a locked summon and having to click it again or click an unlocked one to clear it.
So me and Collin talked a bit ago and forgot to share - the going idea for these summons is you have to actively control them the full time. Similar to a Magic Missile, you actively move it around (or just influence it depending on the summon) as long as the summon is alive. This lets us free up the right click, which we could use to make an alt use per summon. For example, the Bat could dash a short distance and gain damage, the Owl could screech, dealing AoE knockback, so on and so on. Any thoughts on this? I think this'd add a lot of diversity to the Grimoire and make sure it stands out even more than just a way to have a wide variety of summons.
Here's the Sand Poacher summon. The other two, the bat and owl, are just flying at your cursor so there's not much to show there. The only thing remaining to do here is make affixed parts apply to the summon.
Alright, one - hopefully - final thing. I've got affixes working on the summon, but the thing is most affixes just don't apply to projectiles. The only ones that do are these three:
public StatModifier Attackspeed = new();
public StatModifier ArmorPenetration = new();
public StatModifier Knockback = new();
and knockback is almost entirely useless on most summons. Actively detrimental, even. What should we do about this? We could restrict the affixes on grimoire materials, but 2 affixes is barely anything.
I also noticed the original post is written as if summons are NPC
s (and presumably not as NPCs, the term for non-player characters). This is not true of any summon in the game, and giving a life stat for a summon that can be respawned at any time would be useless.
I totally anticipate the affix selection for monster materials will be entirely different and actually not use the base affixes at all. The reason why I say this is because of how they are applied and the tiering of this.
Also this will grow. For example we will add Minion Movement Speed
or Minion Attack Speed
and these might appear on gear that isn't monster material and will buff all summons - Not just the ones summoned by grimoire but the sockets as well.
That said - They can just have the ones available and make sense and we can expand on what is available now
Then my question is - will there be a separate EntityModifier (or similar) class that contains that info? EntityModifier is already being stretched to fit Players and NPCs, where it barely applies to NPCs. For now, I'll just leave as-is, since the system doesn't depend on having many applicable affixes to work.
tried making the little evil ghost face
Then my question is - will there be a separate EntityModifier (or similar) class that contains that info? EntityModifier is already being stretched to fit Players and NPCs, where it barely applies to NPCs. For now, I'll just leave as-is, since the system doesn't depend on having many applicable affixes to work.
I could see there being one specifically for minion-related affixes yeah. Sounds reasonable.
yeah
yeah
I love it <3
Now that I'm using the system, the usage of affixes in this way means that all affix-less parts are useless, and by definition take up most of the space. All of the parts with a white square in the center have affixes. The rest are simply unusable, as long as you have 5 of them you cannot need any more.
tried making the little evil ghost face
This is nice! Will add right now.
And so you throw it out (maby keep a few if we have any parts that go again - a general heart/small heart item or something); hence the reason I didn't think you needed a separate space for only these and just needed more space to affix/PoT items in general.
I could add a trash function, sure. That does not solve the issue that most of what you'd be grinding for would be entirely superfluous and then would require manually removing it. Not just items that are worse versions of other items, items that have no use in any situation.
We still 100% need this storage for the Grimoire, though. If we fix this useless item issue, you'd still have a ton of affixed parts that you'd need to sort through. Now, you'd also have to rewrite the Grimoire UI since it's pretty interconnected. I cannot see a way that you'd get rid of the storage, it's significantly more convenient for the developers and the players and streamlines the whole process. A potential PoT item storage is unrelated.
That does not solve the issue that most of what you'd be grinding for would be entirely superfluous and then would require manually removing it.
I don't want to be rude... But you do know what we are making, right? You are basically describing the ARPG genre ^^. <- supposed to mean above, btw (I'm pretty sure that's the genre name)
I don't have much experience with ARGPs, but this seems wildly inconvenient. If it's not an issue and is true to ARPGs, then less work for me, I don't mind.
Normally you would then let the player filter the items they pick up, but that's not much of a concern for now, I think. - we will probably take a look in that direction when we get a feel for how it plays.
@CollinHerber would probably know better though; I'm not that seasoned when it comes down to it...
Filtering and/or a choice (i.e. clicking on the item in-world to pick it up) might work, parts are uncommon and drop only from specific enemies or critters so that should work. Collin should definitely weigh in though, yeah.
While on that topic - not related to the grimoire at all - it would be pretty neat to have all items glow/burn vfx their rarity color when they are in the world, just because.
That'd be super easy to do too. "Rarity color" being the color of their vanilla rarity (item.rare
) or their PoT rarity (i.e. magic)?
Also, pushed everything to the grimoire
branch. Everything seems to work, only thing that I need to fix is - for some reason - the scrollbar on the storage UI is not doing anything. Checked source, checked other mods where I use it, nothing's seemingly out of place. Just...refuses to do anything. Middle click moves the bar, but left click sets it to the top of the bar and doesn't move it. There's a chance the summon selection UI has the same issue, but I can't test it given the way smaller and more fixed nature of that part of the UI.
Normally you would then let the player filter the items they pick up, but that's not much of a concern for now, I think. - we will probably take a look in that direction when we get a feel for how it plays.
@CollinHerber would probably know better though; I'm not that seasoned when it comes down to it...
Yea an item filter is likely going to need to become a thing at some point. That is a rather complex thing however and like catNull said it will be beneficial to know more about where we land vs where we are now.
In the meantime it may be worth adding some sort of "Toggle Monster Drops" per summon type. For example if you have 2-4 sets of something you can toggle off monster drops for that monster moving forward. Preventing you from having your monster part storage cluttered with things you no longer want/need.
PoT rarity, dose rarity in vanilla even do anything?
Technically vanilla rarity, aside from color and being vaguely around how hard it is to obtain, controls if the item burns in lava. That's it.
In the meantime it may be worth adding some sort of "Toggle Monster Drops" per summon type. For example if you have 2-4 sets of something you can toggle off monster drops for that monster moving forward.
This would require an entirely new UI for it; how about instead, non-affixed parts that you obtain past 5 are instead transformed into some small amount of money or just discarded. This'd be really easy to implement as a placeholder and works even if kept as a final mechanic.
The grimoire will be a new Summoning weapon type that will utilize conjuring as it's main source of damage. The player will actively control a conjured minion - In addition to the normal summons a summoner will have.
There will only be a single item that is used for this weapon type - However you will need to find things through progression to unlock new summons.
When the Grimoire is equipped in the item slot a new UI item will appear (next to character info, quest book, etc) When opening this UI you will be presented with a Menagerie of summonable items. Each showing a "page" about the summon and how to obtain it.
Obtaining the Grimoire
The first class quest from Ravencrest - The Burrow will go over the grimoire
Alt Use
This will summon the minion(s) that you will control. Left clicking will send the summon minion to the target location. Summoned minions will attack things around the target location without going too far away.
Available Summons
Owl
Can Fly Damage: 3 Only summon 1 Unlocked in the Menagerie by sacrificing the following items
Cave Bat
Can Fly Damage: 5 Only summon 1 Unlocked in the Menagerie by sacrificing the following items
Giant Scorpion (Black version of Sand Poacher?)
Cannot Fly Damage: 12 Only summon 1 Unlocked in the Menagerie by sacrificing the following items
Other Ideas?
Programming Tasks
Sprite Tasks