RELEASED RTGOAT's Longevity

Discussion in 'Gameplay Mechanics' started by RTGOAT, Oct 24, 2016.

  1. RTGOAT

    RTGOAT Cosmic Narwhal

    Being one of my favorite games; I wanted to give this game more play-ability. I felt that hitting 90-95% of the game's content was too quick. With this mod I aimed to increase the lifespan of the game by slowing down the rate at which money is acquired.

    ===============================
    PRICE BALANCING:
    ===============================


    -Profits from farming are significantly reduced.
    -Crops with higher profit margins have higher seed prices

    ===============================
    PRICE INFLUENCERS:
    ===============================


    -Selling prices increase as a player levels their respective skill (EX: Farming level slightly increases crop profits or minerals / metals increase as mining level increases).

    -Items are worth more when they are out of season (EX: Strawberries are a spring crop; they sell for normal price during spring, but more in summer/winter and most in the Fall).

    -Relationship with shop owners give player price benefits (Currently: Pierre discounts his seeds, Willy increases the value of fish, and Clint increases the value of gems/minerals/metals).

    -Cooked meal values are increased by 25% (More incentive to cook, less incentive to buy. Passively increases the value of stamina and gifting).

    -Almost all items have random variable price influence (Prices will fluctuate every single day from a random 0-15% [positive and negative] depending on what kind of item it is).

    Seasonal influence will take into account artisan goods and what they were made from. Strawberry jelly will have the same seasonal influence as strawberries; same goes for blueberries, etc.

    ===============================
    STAMINA BALANCING:
    ===============================


    -Axe and pickaxe have less stamina benefit from upgrading (Upgrading still reduces stamina used, but not as much as before).

    -Scythe uses 2 stamina per swing.

    Stamina use is slightly harder to test as it has quite a few variables that affect it over time.
    Because I am limited on ability to test, I've only currently made minor changes and will continue to tweak as needed.

    ===============================
    TAXES/BILLS:
    ===============================


    -At the end of each month (Morning of the 28th), a simple menu will pop up to notify the player of all monthly expenses to be incurred. The player will then have the costs deducted from their bank. If a player has less money than the costs, they will go into debt which will be displayed as a 0. The bill will give the player their debt amount, however the game doesn't account for negative money so its display will remain 0 until the debt is covered.

    -Taxes: Taxes are computed based on the player's house size, how many buildings are on the farm, how much capital the player has placed [on the farm and inside buildings] (bee houses, preserve jars, etc), and tax breaks based on if the player is married and how many kids the player has.

    -Water: Water bills are calculated by the players current house size, how many buildings are on the farm, and how many sprinklers are placed on the farm.

    -Electricity: Calculated based on the players current house size, how many buildings are on the farm, and how many light objects are placed on the farm and inside buildings.

    ===============================
    FUTURE ADDITIONS:
    ===============================


    -Currently my top priority is to monitor the release status and make sure you guys are having a good time.

    -I would like to add dialogue that has a more dynamic trigger. For example, NPCs have special dialogue that is triggered on certain events (Like you became friends with one of their friends or that you have a new love interest, etc).

    -More mail based on special triggers like dialogue.

    -More paths for NPCs. My goal here is to make their schedules less predictable, giving them more realism/life.

    -Your suggestions and ideas.

    ===============================

    I highly recommend starting a new game with this mod. While it will work with a current save, the flow of the game is so different that it would be best experienced from start.

    This mod should play nicely with other mods, but I did not test with any of them. If you have any mod conflicting issues, please do let me know so I can make it as universally compatible as possible.

    I will be checking this post and any pms here on this forum on every 30 minute interval until late tonight.
    If there are any unexpected issues with the mod I will be here for today to handle them as quickly as possible. I appreciate all feedback and ideas for the future.

    I hope that you enjoy this mod as much as I did making it. I plan to continually update and add what I currently have here. As a super broke and busy college student, my time is limited; however, I'm dedicated to spending as much free time as possible to progress this mod alongside your feedback.

    Thank you! :)


    UPDATE v1.0 - [OCT 24]:
    -Hot-fixed a bug where artisan goods (jelly, juice, wine, pickles, honey) were not recognized and being set to a value of 0 if the prefix of the good was more than a single word (EX: Summer Spangle Honey)
    The mod will update and fix any items that were affected by this bug to reflect their intended price.

    UPDATE v1.1 - [OCT 28]:
    -I have added a simple config to allow users to disable any of the three major features. (All future features will also be added to the config)

    UPDATE v1.2 - [NOV 4]:
    -Hot-fixed a bug where prefixed artisan goods (jelly, juice, wine, pickles, honey), purchased from the traveling trader, caused crashing.
    -Random Influence fluctuations have been rebalanced (Same disadvantage, less disadvantage).


    INSTALL:
    -Extract folder from zip download into SMAPI v.40 'Mods' folder.
    -If you already have an older mod version installed, overwrite the old folder with the new folder.

    IN THE CONFIG: Use true or false (case sensitive) to indicate on/off.

    Download v1.2: On Nexus Mods


    What I am currently working on:
    -Creating more influencers to make prices even more dynamic (Diminishing returns, disaster effects, other economic variables)
    -Content additions: Currently I am working on some dynamic dialogue. I've also been working on another feature, but it requires artwork help since I am no artist!
     
      Last edited: Nov 5, 2016
      fofulla, Nishtra, Linnaeus12 and 2 others like this.
    • Quostin

      Quostin Void-Bound Voyager

      Seems like a very interesting mod. The question is, how much cost is it for the 2nd day, or is there any disadvantage if you run out of money? Like sprinklers doesn't work the next day? Or TV doesn't turn on for the day?
       
      • RTGOAT

        RTGOAT Cosmic Narwhal

        Taxes/Bills are only paid at the end of the month (morning of the 28th). If you run out of money, you will go into debt.
        While there is no direct consequence for going into debt, you will be unable to make any purchases until that debt is relieved.

        Hope I answered your question!
         
        • Quostin

          Quostin Void-Bound Voyager

          Interesting interesting. I would probably let the first season bill free or something since that can be pretty hard for people just learning the game. I tend to be really slow in the spring with cleaning up stuff, so introducing taxes and such in summer would be nice. Like get a mail from Lewis saying that hes taxing you now.

          I'm pretty interesting in how this mod goes! Will have to keep my eye on it!
           
          • RTGOAT

            RTGOAT Cosmic Narwhal

            Taxes and bills scale; it doesnt cost very much in the first month. Only as you start placing more utility items and buildings does it start to have more effect.
             
            • othsout

              othsout Void-Bound Voyager

              very interesting features, I can help nothing but trying your mod and reports every progress to you
              thank you for creating such a great mod and please keep update :)
               
              • RTGOAT

                RTGOAT Cosmic Narwhal

                Pleased to hear the positivity! Do let me know about your experience with it!
                 
                • Linnaeus12

                  Linnaeus12 Big Damn Hero

                  Seems promising. Thanks for the mod! :)
                   
                  • hmfanbtnann

                    hmfanbtnann Void-Bound Voyager

                    I really like the idea of this mod. I would also love to see friendship points significantly reduced when giving gifts. It's a little unrealistic for me to have someone at or near max friendship by the end of the first two seasons.
                     
                      Aveloren likes this.
                    • RTGOAT

                      RTGOAT Cosmic Narwhal

                      I agree! It was definitely a consideration and something very likely to come. Thanks for the input.
                       
                        Aveloren and hmfanbtnann like this.
                      • RTGOAT

                        RTGOAT Cosmic Narwhal

                        UPDATE v1.1:
                        I have added a simple config to allow users to disable any of the three major features. (All future features will also be added to the config)

                        IN THE CONFIG: Use true or false (case sensitive) to indicate on/off.

                        -Price Balancing: This includes anything that changes object prices [static price changes and influencers].
                        Turning this off will revert all prices of future items to the game's original price. (Any items created with this feature on will retain their price, only newly created items will revert)
                        Turning this on will change the prices of all current items (anything on the player or saved in chests) and all future items.

                        -Stamina Balancing:
                        Turning this off will restore all stamina costs for using tools. (Game default)
                        Turning this on will enact all stamina balance changes listed.

                        -Taxes:
                        Turning this off will prevent any taxes, bills or refunds from occurring.
                        Turning this on will enact all tax features listed.

                        *NOTE: Taxes are designed and impacted based on the profits gained from price balancing. If price balancing is off, taxes will have less intended impact on the player.
                         
                          foghorn likes this.
                        • spiritslive99

                          spiritslive99 Void-Bound Voyager

                          Could you please provide exact numbers on the changed prices for crops and seeds? I've been eyeing this mod, and it looks interesting, but I don't just want to plop it into my save without knowing how drastically it's going to affect things, so it would be nice if you could provide that documentation here. It's alright if you would rather not, I just figured I should ask. Thank you!
                           
                          • RTGOAT

                            RTGOAT Cosmic Narwhal

                            I will provide, by tomorrow, the spreadsheet of all the changed base prices.

                            Keep in mind, those numbers are off from what you'll see over the course of the game due to the number of influencers on them.

                            Edit1: I also recommend starting a new game to experience the full effect!
                            Edit2: I have pm'd it to you! If anyone else would like to see more specific details, let me know.
                            In a future version, I will release a readme/info sheet to give all the juicy details some of you may desire!
                             
                              Last edited: Oct 29, 2016
                              Linnaeus12 and spiritslive99 like this.
                            • RTGOAT

                              RTGOAT Cosmic Narwhal

                              Small Update: v1.2 released (Minor fixes and slight tweaks)
                               
                                foghorn likes this.
                              • Nishtra

                                Nishtra Big Damn Hero

                                @RTGOAT Can you explain how and when your mod changes prices (I mean on the code level)? I like your ideas and would like that this mod is fully compatible with my Configurable Shipping Dates, but since CSD regularly saves and loads items to/from config I get a feeling there would be some inconsistencis with prices.

                                Also, does making dynamic dialogues require changing xnb files? If so, could you, please, make them optional, because there are interesting mods that make changes to dialogue files and rely on them more heavily.
                                 
                                • RTGOAT

                                  RTGOAT Cosmic Narwhal

                                  I extract the information on the game's objects and update their prices with my created data set.
                                  This update is done when the user loads the game, and at the end of each day.

                                  While I'm confident that my mod would work with your mod, I couldn't be 100% sure until attempted.
                                  My assumption is that you would save objects my mod updated without issue. Since my mod does not check for objects in shipping, they would remain untouched once shipped.


                                  As for dialogue; I am writing and storing added dialogue within the mod itself. I want to avoid xnb edits as much as possible.
                                  I wanted to add question->answer->response dialogue to the game, however, those require xnb edits and since, will be put off until I can find a way around it.


                                  As to a general update on all progress for you and anyone else interested:
                                  I'm quite busy with my 7th college semester coming to a close; I currently have a lot of things in progress for this mod.
                                  I'll post another, more formal update at the end of this month!
                                   
                                  • Nishtra

                                    Nishtra Big Damn Hero

                                    Oh, that's cool))

                                    So, as I thought, once the items are placed in the bin and until sold they are outside of price changes(((
                                    The thing is - my mod does stacking items in the shipping bin with price for the stack being the price of the first items of current name/id/quality, so that config wouldn't become too bloated. As such price changes won't affect an item placed in the shipping, even if it's newly created, if there is already a similar item. I can check prices when doing stacking, but won't really help - config will still bloat up and it will be weird when several items with the same name are sold all for different prices. Definitely not an ideal solution.
                                    Can you make Longevity functions that update prices accessible from outside in the next release, so I can call them when saving/loading contents of the shipping bin?
                                     
                                    • RTGOAT

                                      RTGOAT Cosmic Narwhal

                                      Could you explain a bit more by what you mean by "Can you make Longevity functions that update prices accessible from outside in the next release"?

                                      Day 1: you place an item (a) into shipping that has a price of 80 for that day.
                                      Day 2: you place an item (a <- same item) into shipping that has a new price of 100. (Both items, since the same, have the price of the item placed on day 2?)

                                      You would ship the item and receive 200 (100*2). This seems to be as intended.

                                      If you ship the item on a day and receive money for it that night you get its value as of that day.
                                      But if you ship the item and don't receive the money until a future date, you get the value of that item on the day it is shipped?
                                       
                                      • Nishtra

                                        Nishtra Big Damn Hero

                                        Sorry, I meant making the function public in the code.

                                        In the current version you actually get a price of the Day 1 item for the whole stack (since items are processed from older to newer), but this can be fixed by going through array backwards. For some reason it skipped my mind when I thought of stacking items on different days o_O

                                        Your understanding here is correct. So the issue still stands - if you put an item in the bin on Day1 and then won't put the same item on the shipping DayX , you will get an outdated price of Day1 item.
                                         
                                        • RTGOAT

                                          RTGOAT Cosmic Narwhal

                                          To understand how my code works, the majority of the source would need to be public.
                                          Since I'm currently developing, I have no intention of releasing any source code until I decide to stop working on it.

                                          To update the item you shipped, I would need my code to access your config.
                                          Since your config is outside the existence of my code, it has no way for me to update those items.

                                          I think the intention of your mod is to allow the players to sell away items and receive the gold in a large chunk later on.
                                          If the player was willing to sell the item on day 1, but not receive money from it until day 2, then the price of the latest item (of its kind) put in should be the selling price (as of the day put in).

                                          It works in a decent way, but it isn't the most optimal. In order for us to fix the issue, either of our code would need to be changed to
                                          take on the possibility that both our mods are run together.
                                           

                                          Share This Page