Fatecards not working

Discussion in 'PC Mods' started by Amelia Crasman, Dec 28, 2017.

Thread Status:
Not open for further replies.
  1. Description: After creating new "Meta" traits I have noticed that some of the systems i created that run in fatecards have stopped working. Not all of them, but only some. I also created a new fatecard in the progress and I'm speculating if there's a certain limit on fatecard. I'm really confused, after all this time coding this issue is completely unprecedented to me. Any help?

    Changes before I noticed the issue:

    1)Cooks, medics, and fitness guru's dominated label trait is trait.meta.(skill) with a sub trait to their respective "progressive", this change is only undertaken by one character in the game, with all other characters as cooks and whatnot have a normal "progressive" trait that has a subtract to the meta version

    2) interplaying with #1 is facilities.xml. I made changes so when facilities look for actors for a job, it looks for the "meta" extension to the trait instead of a "progressive"; only present on medical, kitchen, and gym facilities.

    3) created a new fate card that determines who fast the "fatigue spikes" occurring in the player infected with the plague evolve into more advanced stages overtime. This system works flawlessly though and I don't think it's causing the issue but you never know.

    All help is appreciated And thank you in advanced :)
    Del44ZSlayer and Bob Crees like this.
  2. QMJS

    QMJS Famous

    I'm not sure I understand the problem, but here is a way to test the fatecards. Make a new fatecard deck, put only the one you need to check in it, and run it (like <Fate_PlayCard DeckName="Remind" />). the 30second update in rtsevents is a good place to put that.

    If the same code works there, it is a deck limitation. (There is one, but I am not sure how big it is. If you made a lot of additions, that could be the issue.)
  3. I will try that and I'll get back to you. Thank you
    Del44ZSlayer and Bob Crees like this.
  4. Okay, the deck runs when called upon, however why does it refuse to play normally? Any ideas?
    Del44ZSlayer likes this.
  5. QMJS

    QMJS Famous

    You may have to adjust the frequency that card appears (Quantity=), as other cards in the deck may appear way more often. Also, check and see how many are available at one time, how often they are added, and how often they are played (DrawDelay="6m" HandSize="20" PlayCooldown="15m")

    When there a lot of possibilities in a particular deck, it is not uncommon for some to show up rarely. But if the code works when called, but isn't showing up, it is likely to be because of those numbers.

    You might also have to wait a while... the decks start empty, add a new possible card every "DrawDelay" until it fills up to "handSize", and picks one from the hand to run every "PlayCooldown" (or when called from other code with the Fate_playCard command.) Until the card is selected to be in the hand, it can't run, even though it is in the deck.

    Fatecards is an odd system... it works, but it is not exactly intuitive.
    Del44ZSlayer and Amelia Crasman like this.
  6. Thank you again all Mighty QMJS. Thank you so much-
    Del44ZSlayer and QMJS like this.
  7. @QMJS so your answer worked well the first time, setting off the fate card. The fatecard deck is the system that increases zombie density overtime.

    The density raiser(the fate card deck name) has had no work done to it and is not influenced by outside variables( except for the default zombie density which it uses as a basis); yet somehow it has stopped working except for the first initial run.

    The density raiser checks 3 different inputs before raising the density stage, 1 of which is a custom variable acting as a switch allowing a density raise; the switch is a timer based based variable.

    An interesting occurrence I found was that an action in the "update30s" didn't occur until a good 10 minutes after a game start, regardless of a 100% chance to play. It does however have a "play once" variable; After it plays, it no longer occurs that playthough, this is intentional and has always worked beautifully until now.

    I theorize that these 2 glitches share the same issue, coinciding. But the hard part is what it could be?

    Both the 30supdate action and the DensityRaiser deck have not been manipulated in anyway shape of form prior to the disruptive error.

    Ant inputs??
    Bob Crees likes this.
  8. QMJS

    QMJS Famous

    Do you have the variables set in the globalconstants? They can generally only be used inside a specific module if not defined in the constants, so referring to them somewhere else they will always have a 0 value.
    Bob Crees likes this.
  9. I don't use global constance
    Could a computer restart possibly fix the issue. I restarted last night but haven't had a chance to test it
    Bob Crees likes this.
  10. QMJS

    QMJS Famous

    Restarting Steam itself often straightens things out. Whenever it needs to update, it can cause some weird issues on some games, and it updates a lot... far more than all the games and programs I use and the operating system itself combined.

    I misspoke.. it's not globalconstants, what I meant to say was rtsdata. (Trying to answer multiple questions at once got me a bit confused.)

    But, check and see if your recent work is referencing any of the variables from the earlier actions. If they are using or checking values set in another system, you will need to put them in the rtsdata file.

    They are relatively simple.

    <Group Name="Sandbox">
    <Subgroup Name="Zombie">
    <Value Default="0" Name="DensityMultiplier">
    <NameText Flags="" Notes="" Text="" />
    That would then be referenced as Sandbox.Zombie.DensityMultiplier

    Or you could just add a new group
    <Group Name="Custom">
    <Value Default="0" Name="CurrentDensityMultiplier">
    <NameText Flags="" Notes="" Text="" />

    And that would be referenced as Custom.CurrentDensityMultiplier
    Bob Crees likes this.
Thread Status:
Not open for further replies.

Share This Page