Jump to content
Aveyond Studios Community
Amaranth

Ant's Journal

Recommended Posts

10 hours ago, Duffer123 said:

With affixes, it would be sooo good if they could (per earlier posts on colour) change/shift 1 or 2 colours in the original base icon (especially 2d games) and on any original base mesh.  That saves greatly on resources in game.  So, for example you'd shift silver and grey to gold where the affix (material) was gold....  Also, affixes need to reference effects/particles ie. Flaming sword, dagger of ice...

How would you expose the ability to color an item's mesh? The only way I can think of doing this is using a shader material that uses a color map image that then maps the RGBA values to configurable colors. That would require HeroKit to be rather tightly integrated with the shaders you are using.

Share this post


Link to post
Share on other sites

@ChiaPet,

The easiest crude way is to diddle with values in fields in the material... So change the colour or the albedo tint colour:

https://docs.unity3d.com/ScriptReference/Material.SetColor.html

https://forum.unity.com/threads/changing-the-albedo-color-in-the-material.442061/

And similar.

The finesse way would be to either integrate with an Asset like Colorify or Color Shift or replicate some of their functionality...

Share this post


Link to post
Share on other sites

Using Material.SetColor() on the albedo of a standard shader will tint the whole mesh, though. You normally would just want part of the mesh colored (e.g., the blade of your sword mesh). So yes, you'd have to do something like use Colorify, or like I said previously, use a shader that uses an RGBA-based color map, if you want to go down that route. 

Not that I wouldn't love this type of feature, but it feels beyond the scope of what HeroKit should be handling, especially for the initial implementation.

Share this post


Link to post
Share on other sites

Don't worry, folks. The way I'm setting up items, adding these as custom actions shouldn't be a problem... but I will probably just make them for you, since I suspect it won't be much of an issue.

Speaking of actions, I wanted to let you know that actions are almost 100% hooked up in the items database. I'm just cleaning up the way I want them to look. Tomorrow, I'll post what I've come up with. 

Share this post


Link to post
Share on other sites

Work continues on the items menu. The layout is almost finished.

What's in it right now:

  • You can set general details, such as name, icon, description, value (gold, crystals, etc)
  • You can set which meters (health, experience, etc) are changed when the object is used.
  • You can set which stats (physical strength, magical strength) are changed when the object is used.
  • You can play additional actions when the action is used.
  • You can attach affixes and sockets.
  • You can add variance to meters and stats that will change.

What needs to be worked out:

  • Item can have type (Item Type database is now set up, I just need to add this field to the Item Database). Right now, item types do not include subtypes, but I will build subtypes at some point in the near future.
  • Item needs a target (player, one ally, all allies, allies in range, enemies...). For now, I'm going to use the Diablo style of gameplay (single hero in party, fights are action-in-scene instead of turn-base) and I need to think about how this will make sense.

Have feedback? Simpler layout ideas? Let me know.

zrUFKL9.png

Share this post


Link to post
Share on other sites

A@Ant,

It all looks nice n neat.  Great to hear about types/subtypes.

Not sure of items will include equippable items, clothing, armour, weapons?   Assuming it will.

If so, weapons damage?

Also, item weight and perhaps 2d size in inventory.

Loot weight/chance to loot?  Thinking about it renown and rarity could be dealt with as affixes?

Items requiring or prohibiting race or class or level or stat?

With craftable items, items and quantities required?

Share this post


Link to post
Share on other sites

Going to put equippable items into their own database as wearables. Equipable weapons will also get a database.

Loot weight and chance to loot should fit into attributes database, but we’ll see. If not, they’ll get their own fields.

I’m going to work on the player databases next. These database will cover things like race, class, level, etc. Once these are finished, let’s return to the items database and discuss where to put these things. 

Share this post


Link to post
Share on other sites

I'm definitely interested in your approach to characters and wearables in general. There are so many ways to implement this in Unity and so many assets that do this. I suspect you'll have to pick a path that may not meet everyone's needs, but will hopefully meet the majority of use cases and maintain the kit's simplicity. Will be great to see how you choose to tackle this. Happy to provide input, of course. :) 

Share this post


Link to post
Share on other sites

Finished the Elements database tonight. You can assign elements to items. Elements are things like fire, ice, etc. Items will be able to inflict or remove an element. Elements will also be something you can assign to a player class. So, if you have a fire mage class, you'll be able to mark a box to ensure fire attacks on this player will not do as much damage, but water attacks will do more damage than normal.

Next up are ailments. Ailments are things like "currently poisoned", "currently mute", etc. These are important because they can be assigned to both items and players. They are similar to Elements, but they are bit more complicated. 

Share this post


Link to post
Share on other sites

@Ant,

Elements sound really good, as do Conditions/Ailments.  

Presuming you are not being prescriptive on either? (ie. A game doesn't necessarily have to have ice or fire or either in opposition etc.).

Can elements (and affixes) prompt particular effects/particles and, with conditions, colours?

Just wondering... In the item database, shouldn't the items also be associated with a particular mesh or prefab?

Another thought occurs ... Presumably if a player creates a new unique item in runtime/game can that be saved out with game saves?

Share this post


Link to post
Share on other sites

I think this raises some interesting questions about how much HeroKit can/should/will have direct integration with the visual representation of these RPG gameplay elements out of the box. On the one hand, having all of that already established in the kit would make it extremely easy to make your RPG, which I think is part of the vision/mission/goal of HeroKit. On the other hand, if that integration makes it too restrictive to customize the visuals, everyone's game will end up looking the same. 

I don't profess to know the answer to this conundrum. Maybe some sort of pseudo-MVC approach to make rip-and-replacement of how characters/wearables/status effects are displayed more feasible? For me, at least, being able to easily sub out my own meshes, shaders, and particle effects is the most critical. I can probably live with more restrictive development guardrails otherwise.

Good luck navigating all these requests, Ant. :)

Share this post


Link to post
Share on other sites

@Duffer123, notes below:

12 hours ago, Duffer123 said:

Presuming you are not being prescriptive on either? (ie. A game doesn't necessarily have to have ice or fire or either in opposition etc.).

Nope, you don't need to use these. Only if you want to. I'll need them on some items in my game, but not all of them.

12 hours ago, Duffer123 said:

Can elements (and affixes) prompt particular effects/particles and, with conditions, colours?

I want to make this happen. The visuals would be cool. Especially on that magic sword that crackles when it's equipped.

12 hours ago, Duffer123 said:

Just wondering... In the item database, shouldn't the items also be associated with a particular mesh or prefab?

Depends. If you mean that when an item is equipped, it should appear in the game on the player, I will have an action for this. If you want to use a 3D image instead of a 2D snapshot of it in the inventory menu, I will look into this. 

12 hours ago, Duffer123 said:

Another thought occurs ... Presumably if a player creates a new unique item in runtime/game can that be saved out with game saves?

This sounds like a job for a crafting menu. Not created yet, but I like this idea for when it is.

@ChiaPet, notes below.

3 hours ago, ChiaPet said:

I think this raises some interesting questions about how much HeroKit can/should/will have direct integration with the visual representation of these RPG gameplay elements out of the box. On the one hand, having all of that already established in the kit would make it extremely easy to make your RPG, which I think is part of the vision/mission/goal of HeroKit. On the other hand, if that integration makes it too restrictive to customize the visuals, everyone's game will end up looking the same. 

I don't profess to know the answer to this conundrum. Maybe some sort of pseudo-MVC approach to make rip-and-replacement of how characters/wearables/status effects are displayed more feasible? For me, at least, being able to easily sub out my own meshes, shaders, and particle effects is the most critical. I can probably live with more restrictive development guardrails otherwise.

Good luck navigating all these requests, Ant. :)

This is something I think about. But I have a plan. The way I've been building the databases should make it very easy for me (and any brave developers) to build custom-looking Item Builder Menus. The last screenshot I posted is the basic Item Builder Menu I've created that sits on top of the Item Database. It's going to get bigger and more complicated as requests come in, but... I could easily clone this base Item Builder Menu and make new ones with fewer/more specific fields. And they would all point to the same Items Database. Some people would end up with hidden fields that they would never use, but they would always be there, just in case... 

 

 

 

Share this post


Link to post
Share on other sites

Conditions are complete. Here is a look at the database:

yytSzuA.png?1

And this is how you attach one to an item in the Items Database:

gnUhKOl.png?1

@Duffer123, I've added item weight (not what you see above). 

@ChiaPet, There are a lot of fields. I'm thinking I may have a menu where you can make the ones you want visible and hide the rest. 

 

Share this post


Link to post
Share on other sites

@Ant,

Looking really good... And like the idea of a menu of preferences so change what you see or don't see.

One application of that could be filtering database items by element/row dependent on say with items type or subtype?

Presuming you can associate actions?

 

Share this post


Link to post
Share on other sites

Me likey! So in the screenshot, it looks like "Carrot of Death" applies the Death condition when it's used (presumably on the target the player has selected at the time they use the carrot item). How easy will it be in this RPG module to incorporate conditions with equipped items? I'm thinking of two scenarios right now: 

1) On weapons, associating a condition with an affix or socketable enhancement that applies the condition upon striking an enemy. (Ideally, there'd be some sort of percentage chance option here, to allow for random application of the condition.)

2) For both weapons and armor, having a condition be applied to the wearer while the item is equipped/worn. For example, applying the Regeneration "condition" to your character while wearing something with that associated enhancement. 

 

Also, a couple questions/requests/ideas about the Conditions database:

- Can conditions be designated as stackable (i.e., a character can have multiple simultaneous applications of that condition) or not stackable?

- For changes to meters, what are the other options in the dropdown besides "permanent"? Is there an option that's tick-based (e.g., a Poison condition that removes HP every designated time interval)? 

 

Thanks again for all your hard work and thoughtfulness :)

Share this post


Link to post
Share on other sites

@ChiaPet, conditions are stackable. You can assign “temporary” or “permanent” to meters and stats. If “temporary” is selected, the change to the meter/stat only lasts while the character has the condition. I also need to add an option to have a condition stop a meter/stat from being updated while condition persists.

Armor applies condition to wearer,  weapon applies condition to enemy.

When I build the weapon database, I could add both offensive and defensive condition slots.

Share this post


Link to post
Share on other sites
12 hours ago, Duffer123 said:

@Ant,

Looking really good... And like the idea of a menu of preferences so change what you see or don't see.

One application of that could be filtering database items by element/row dependent on say with items type or subtype?

Presuming you can associate actions?

 

Filters could come in handy... especially if you have hundreds of items.

Share this post


Link to post
Share on other sites

Sorry, I'm contributing to the feature creep here. How about percentage chance of applying a condition or executing a custom action as part of either direct item effects or effects associated with an affix (native or socketed)? :rolleyes:

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×