News:

Welcome to the new Sinister Design forums!

Main Menu

Ask the developer a question!

Started by CraigStern, February 07, 2010, 11:01:17 AM

Previous topic - Next topic

CraigStern

I'm not sure I understand what you're requesting. You want the ability to modify one or more properties of an individual item via scripting? Something like: ModifyEquipped/characterName,slotName,statName,modification ?

bugfartboy

While I was thinking something a bit more general use, you got the gist of it. Something like GetItemStatTo/characterName,itemIndex,statName,targetVariable, which could set the specified variable to the requested stat, and SetItemStat/characterName,itemIndex,statName,operation,modifyingValue which could modify the specified stat in a manner similar to the actions used to set character stats. itemIndex, in these cases, would be the position of an item in a character's inventory, assuming the data structure you're using to store items on characters is numerically indexed (such as an array).

CraigStern

Gotcha. I guess my question is, what would you be using it for? (It would be rather difficult to develop a scripting framework for item stat modification based upon inventory List position that would actually be useful to modders, since any kind of item can be in any position--there would need to be a variety of Actions just relaying the various properties of items at any given inventory position just to let you discern which item to act upon!)

bugfartboy

#1728
Quote from: CraigStern on January 19, 2018, 09:47:36 AM
Gotcha. I guess my question is, what would you be using it for?
That's a valid question.  A simple system that comes to mind is a weapon repair service that could charge the player variable amount of Aura based on the item's consumedAfter stat, or could perhaps enhance a stat on the weapon (maybe enabling whetstones to boost the weapon's strPlus stat instead of directly modifying the character's stats).

Another, much more complex, system that comes to mind is one that would allow the player to collect herbs and mix concoctions for healing wounds, boosting abilities and resistances, or cure status effects, by modifying the stats on a single item.  It'd effectively be custom potion brewing, themed a bit more in line with the Telepath universe, without requiring a unique item class for each potential combination of effects.


Quote from: CraigStern on January 19, 2018, 09:47:36 AM
(It would be rather difficult to develop a scripting framework for item stat modification based upon inventory List position that would actually be useful to modders, since any kind of item can be in any position--there would need to be a variety of Actions just relaying the various properties of items at any given inventory position just to let you discern which item to act upon!)
That's true.  Another potential method of accessing an item (that comes to mind) could involve adding a read-only id to each and every item instance that could be used in lieu of characterName,itemIndex to pick an item. Without knowing the intricacies of the engine, this could simplify the issue you mentioned, although it would bring with it a set of new complications.  Passing that item id to the script would require a new action, and the calling script would, at least once, need to go through extra work to determine if that id corresponds to the item or item type it wants. I could also see determining which character/object is actually carrying the item (which could be necessary to actually get/set an item's stats), if an item with that id even exists within the current map or shared inventory, increasing time complexity in a very nasty way (since nested for loops, one for the units on the map and one for the items in each inventory, are an O(n2) operation).

[spoiler]
Another alternative method would be adding in support for a vetted scripting language, such as Lua, although I imagine that would require a total overhaul of both the game engine and already existing maps.
[/spoiler]


TL;DR: I can imagine a couple use cases for being able to more directly manipulate items, but I can definitely understand not wanting to implement it.

CraigStern

In the new system (but not the old one), every item instance actually does have its own unique numerical ID! So theoretically, I could implement a system in which the game lets you get the ID for an item in a character's inventory by various methods, and then have an Action that lets you modify the properties for an item by its ID--but I foresee issues with getting the game to pull the correct item when duplicates of a given item types reside in a character's inventory. Suppose you want to upgrade Character A's Bandages, but that character has three different Bandages sitting in their inventory. Which one is the game supposed to pull the ID for? Is it supposed to create an integer list of IDs, each of which the scripter than then inspect the properties of via further Actions in order to pull the correct item? All of this is possible, but you can quickly see what a pain this would turn into to implement. I'd probably have to make it hook into the dialogue UI somehow to present the player with a list of items, with a given stat for each shown in parentheses, so that they could make selections.

The nice thing about an action that just acts on equipped items is that each character can only have one thing equipped in each slot, the fact that an item is equipped already shows that that item is useful to the character, and the UI interaction for changing equipped items is already implemented. :)

Sythion

I was wondering, have you considered making a Discord channel for the website?
Hunger is the best spice.

CraigStern

Not really. Skype, Slack, Discord--the fact that they're in real-time makes it much harder for me to participate, given the constraints of having a day job. I'd never have time to actually pop in, let alone moderate it or stream!

Duskling

#1732
EDIT: Upon watching your True Messiah tutorial videos, it seems that part of my original question was answered, since cards do not appear to be faction-specific (though please correct me if I am mistaken). However, the core of my question remains - are there any mistakes you might expect beginners to the game to commit, such as agreeing on an alternative turn order and playing that way, that may break the balance of the game? Are there any repercussions to playing out of the specified Red-Black-Violet-White order?

Also, when you say "78 miracle cards," do you mean 78 unique miracle cards, or 78 miracle cards total?

Finally, who made the art? It's beautiful!

CraigStern

Thank you! If you click on the FAQ link on the Kickstarter page, the artists are all listed there. :)

As far as beginner mistakes, I try to cover all of the most common ones in the videos and in the rulebook FAQ. The single most common one, I think, is not guarding temples and temple building sites, thereby allowing enemy forces to waltz right up and wreak havoc.

Right now, changing the turn order won't throw off the balance except in 4-player. Currently, every player begins with the same cards, and the starting spaces are all equidistant in 2- and 3-player. Thus, advantages and disadvantages in those modes will merely be swapped if you swap turn order. This will change if I ever introduce unique starting cards, but as you note, that's not currently a thing.

Oh, and 78 is the total number of miracle cards. There are 39 or 40 unique miracle card types in all (which still means you'll be doing a lot of reading the first couple of games, when you're still learning what they all are and what they do).

bugfartboy

Will scripts work similarly to the previous engine, in that it's just a block of actions? Will the new script implementation support defining scoped parameters (making them more akin to functions), or will that need to be handled by the script's author?

CraigStern

Scripts work very similarly to how they worked in Telepath Tactics; individual actions have scoped parameters, but there's no ability to create variables local to a given script.

bugfartboy

Playing through Telepath Tactics again, I realized there was music in the game that I didn't recognize. Was the music track "ThereWillBeBlood", found in the Caravan Battle Prelude (I think), not included in the Telepath Tactics Original Soundtrack?

CraigStern

That's possible!

Ryan Richko had control over the official soundtrack; I encouraged him to include everything in its fullest form, but I know he chose to edit or omit certain tracks in the interest of making the OST a more enjoyable listen, just as an album. ("Evil Presence," for example, is shortened on the OST relative to how it appears in the game.)

bugfartboy

Quote from: CraigStern on July 09, 2018, 11:33:11 AM
he chose to edit or omit certain tracks in the interest of making the OST a more enjoyable listen

That's disappointing to hear, given the track is actually pretty neat, but entirely understandable. Thanks for the explanation!

CraigStern