Jump to content

Patch 0.15 Patchnotes: Economy Update


koonschi

Recommended Posts

  • Boxelware Team

Patch 0.15.0

 

Date: November 9th, 2017

 

The economy update is almost ready and available on the beta branch! In this patch, we've reworked factories, stations and a lot of things that have to do with economy.

Our modding community will also probably be happy about the extensive updates to the script API, as well as its documentation!

 

Beta Branch Note: These changes are currently available on the beta branch. The beta branch is for testing experimental changes and for finding and fixing errors.

 

This is how you get access to the beta branch (USE AT YOUR OWN RISK):

Right-Click on Avorion in your Steam list, Properties -> Betas -> Select branch 'beta'.

 

Gameplay

 

"Mostly quality of life changes, nothing too impressive. Crew is more predictable, so for example at mines you will find miners, while military stations will always host generals and other officers."

  • Predictable Crew: Hireable crew is more dependent on the type of station
  • Event: Resource Depots request delivery of a specific resource
  • Player ships can now be transferred to the alliance (no taksies backsies though!)
  • Added trading between players
    • Players can now trade money, resources, items and relation improvements

    [*]AI trading ships are now pulled towards/pushed away from docks with a tractor beam

    [*]AI trading ships avoid occupied docks

    [*]When an AI ship crashes into a still-standing player station, no damage is done and no relation changes will happen

    [*]Fulfilling delivery missions now improves relations

Economy

 

"In order to make stations more profitable, we reworked several things about them, like cheaper upkeep costs and enchaining possibilities."

  • Added cargo shuttle "fighters"
    • Cargo shuttles can be bought at equipment docks
    • Custom cargo shuttles can be built at a fighter factory

    [*]Factories can now be configured to send out cargo shuttles to sell or buy goods from other stations

    [*]Factories can be configured to request traders when they are full or run out of ingredients

    [*]Factory production time is influenced by value of the production and the production capacity

    [*]Factory station extensions now add production blocks

    [*]Rebalanced several goods and production chains to avoid completely over/underpowered factories

    [*]Crew payment is now only a third of what it used to be, matches with shown pay now

    [*]More secure stations

    • Stations require less repair crew
    • Station crew payment reduced by 75%

Station Building

  • Players can now found the following stations:
    • Biotope
    • Casino
    • Habitat
    • Equipment Dock
    • Fighter Factory
    • Research Station
    • Resource Depot
    • Smuggler's Market
    • Trading Post
    • Turret Factory
    • Military Outpost
    • Shipyard
    • Repair Dock

    [*]Station owners get a percentage of the money transactions of most stations, as well as cheaper prices

UI

  • Added tooltips to mission exclamation marks on the galaxy map
  • Added an icon to show when bulletin boards have missions
  • Improved names of stations in delivery missions
  • Fighters that are unable to land make an error message pop up at the top of the screen
  • Energy usage of energy weapons is now also visible when they're not firing
  • Automatically create new squad if there is no free slot when transfering fighters
    • If there is a free slot in a non-adjacent squad it is used first

    [*]Added description of relations to sector-controlling faction to galaxy map tooltip

    [*]Lost fighters without motherships can now be collected by other ships of the same faction

    [*]Added a hint for rearranging energy system priorities

    [*]Ambient (economy) payments that happen in another sector as the player is in aren't shown as notifications

    [*]Ambient (economy) relation changes that happen in another sector as the player is in aren't shown as notifications

    [*]Reworked chat window

    • Added filters for different channels
    • Added a scroll bar for the last few hundred messages

    [*]Removed own playername from dropdown menu when writing an email

    [*]Items marked as "trash" are now at the end inventory lists

    [*]Improved visibility of the trash icon

    [*]Trading routes are detected when both stations sell/buy for 0 credits

    • This is important for trading routes between player owned stations

    [*]Added a warning when a new key binding is already bound to another key

    [*]Removed a few outdated hints

Client

 

"With this patch, we've reworked a lot of the window and graphics code to make the game behave better on more platforms. If there are any issues coming up, please tell us, so that we can fix them."

  • Improved printing of GL errors
  • Added new MessageBoxes that work on Linux as well
  • Added a check for crashes at startup
  • Improved compatibility for older GPUs
  • Added lots of new loading screen tips
  • Added some Sci-Fi and actual science trivia to loading screen tips
  • Improved full-screen resolutions for computers with multiple, varying size displays
  • Improved handling mouse and windows for computers with UI scaling enabled
  • Improved networkd and client performance when removing multiple blocks

Server

  • Fixed an issue where /run would command not work with normal statements
  • Added a devMode setting to server.ini
    • Fighter minimum production limit is 5 seconds instead of 60
    • No hyperspace restrictions
    • entitydbg.lua script is attached by default to nearly all entities
    • Scripts can be refreshed with F5, Ctrl-F5 and Shift-F5

PvP Server Config Options

 

"While we'll probably never balance the game around PvP, we want to give players the opportunity to set some ground rules for servers that allow PvP."

  • Added a value to server.ini to restrict the maximum amount of blocks for player crafts
  • Added values to server.ini to restrict the maximum amount of volume for player ships and stations
  • Added values to server.ini to restrict the maximum amount of player ships and stations

Misc

  • Improved accuracy of fighter-to-station distance calculation
  • Added some minor bugs
  • When a non-player controlled entity jumps into another non-loaded sector, the sector is now loaded from disk or generated

Script API

 

"The Scripting Documentation has been massively improved with this update. Parameter names and return types are now correctly displayed where possible, and we added extensive documentation on how the predefined functions for entity, sector and other scripts work."

  • Massively improved generated Documentation
    • Parameter names are added correctly
    • Return value types are added correctly
    • Added documentation for predefined scripts and their available functions

    [*]Added a setCheckedNoCallback() function to CheckBox

    [*]Added a setValueNoCallback() function and a setPositionNoCallback() function to Slider

    [*]Added ValueComboBox class that can save key-value pairs

    [*]FighterAI generates script-readable feedback about what it currently does

    [*]Added a function startFighter() to start a single fighter

    [*]Added a new AI state to make a fighter fly to a specific location

    [*]FighterType of FighterTemplate is now accessible

    [*]Added entity and entityId properties to Components

    [*]entitydbg.lua can now spawn and transform factories

    [*]Added checks to FighterController if a fighter can start

    [*]Added a StartError enum

    [*]Added reference to Owner component

    [*]Added Hangar and Fighter script callbacks

    [*]Added a flag to Hangar to check if it's currently producing

    [*]Added a BlockStatistics class

    [*]Added Assembly, BlackBox and Gyro BlockType enum values

    [*]Added a Hangar():clear() function

    [*]Added a Selection.entriesHighlightable property

    [*]Components can now be constructed with a string, similar to Entity, or with their Entity

    [*]Removed payMoney() and receiveMoney() functions since they can be replaced with pay() and receive() without issues

    [*]pay() and receive() now allow an optional string as first argument that can be used as description for the transaction

    [*]Added a Format class that can be used for translatable money transaction descriptions

    [*]Added reference to DockingPositions component

    [*]Matrix now supports in-place transformation of vectors (less allocations, better performance)

    [*]ShipProblems HUD is now accessible through scripts

    [*]Fixed some default components being missing to entities created via Sector():createObject()

    [*]Fixed wrong documentation in several callbacks

    [*]getMissionLocation() can now return more than 2 coordinate values

    • See documentation for details

    [*]Added a class GameSettings() for access to the server and game settings

    [*]Added properties to access the ships and stations of a player or alliance

Parallel Entity Script Execution

 

"We've finally finished our parallel scripting interface. We're using 2 new functions for updating entities in a sector in parallel, but due to the nature of parallel computing and race conditions, access to other objects has to be limited."

  • Added several ReadOnlyXXX classes
  • Added an updateParallelRead() Entity script function
    • This function will be updated in parallel with other functions of the same name
    • In this function, access to all entities is granted, but only through ReadOnly classes

    [*]Added an updateParallelSelf() Entity script function

    • This function will be updated in parallel with other functions of the same name
    • In this function, only access to the own entity and the ReadOnlySector() is allowed

    [*]In the above functions, access to all other classes, such as Galaxy(), Server() etc. remains as it was already

    [*]updateParallelRead() is executed before updateParallelSelf()

Bugfixes

 

"As usual, user bug reports are marked with [uBR]. Thanks everybody for using the bugtracker and forums to report issues!"

  • [uBR] Fixed an issue where repair beams were not penetrating shields
  • [uBR] Fixed an issue where shield damage updates would cause lots of network traffic
  • [uBR] Fixed an issue where almost broken shields would dampen hits if multiple shots hit it in the same frame
  • [uBR] Fixed an issue where wreckage pieces that are part of a wreckage sector are cleaned up
  • [uBR] Fixed an issue where fighters would slow down a lot when returning to the mothership
  • [uBR] Fixed an issue causing sliders in crew board UI showing non-integer numbers
  • Fixed lots of GL/graphics/display issues
  • [uBR] Fixed an issue where it wasn't possible to fully repair ships
  • [uBR] Fixed object detector not detecting Exodus mission beacons
  • [uBR] Fixed insurance mails being sent for 0 credits
  • [uBR] Fixed craft stats showing number of members instead of workforce
  • [uBR] Fixed quickmenu tooltip showing the wrong keyboard shortcut for mail
  • [uBR] Fixed an issue where alliance notifications would sometimes not be recognized as already there, leading to notification spam
  • [uBR] Fixed an issue where fighters weren't able to land when no player was in the sector
  • Fixed an issue where /run would command not work with normal statements
  • Fixed an issue where mail window would create unnecessary network traffic
  • Fixed exploit in turret factory
  • [uBR] Military outpost has a welcome text as well now
  • Fixed an issue where some freighters had no engines
  • Fixed an issue where alliance ships would not be able to be controlled by anti-smuggling patrols

Known issues

 

"These are some known issues that we will be fixing while the update is on the beta branch. There are several more, but these are the most prominent ones or ones that have been introduced with this update."

  • Cheaper prices for player-owned stations aren't yet shown to owner, but this is only a UI issue, the owner actually gets cheaper prices already
  • No client filesystem scripting API
  • Hangar landing areas must stick out of the bounding box of the ship/station for fighters to be able to land
  • AI Traders don't respect the price ratio of custom factories yet
  • Relations to players can't be lowered through a menu yet

 

Link to comment
Share on other sites

AWSOME!

 

Love how we the players can now actually make are own valid eco center!

 

I was think as a whole tho I think it be cooler if each factory/station type was a block we can add to our own stations. So the bigger that block the more production power. This would allow players to make massive awsome stations like  X: Rebirth has. 

 

I am also still hoping to see the combat rebalance revolved around the Mobility/energy/DPS Trinity trade off systme.  With the reactor setup I suggested eons ago so we can defend outpost.

 

2: Reactors

Generators will all be renamed reactors and cost ten times as much credits to be placed. An energy management system like in the old X-wing game

will be implanted so the player can control how this new sparse resource is distributed.

Unstable and stable modes:

When a reactor is placed it is automatically set to unstable which means it generates the normal amount of energy. However the player is able to turn reactors to stable mode which means that the generator will put out ten times as much energy. In this mode though the ship the reactor is attached on will not be allowed to travel faster than 100 m/s and cannot perform hyperspace jumps effectively making it into a station or a defensive weapon platform.

Switching a reactors mode takes time according to the mass of the reactor if you have a massive reactor it can take up to twenty minutes for it to fully switch, during which time it produces verey litle energy and is vulnerable to attack.

 

Link to comment
Share on other sites

Would it be possible for you to increase the rate in which AI stations consume their materials? Right now it's honestly extremely slow.  Also, Please fix this issue with AI stations who have a max capacity to hold items that ranges from 0/0 to like 0/10, that's kinda...dumb -_-

Link to comment
Share on other sites

  • Boxelware Team
Would it be possible for you to increase the rate in which AI stations consume their materials?

Are we talking about newly generated stations or old ones? The old ones don't have as many production centers, so it takes them longer to produce.

 

Please fix this issue with AI stations who have a max capacity to hold items that ranges from 0/0 to like 0/10, that's kinda...dumb -_-

Can you give a seed and sector where this happens so that we can reproduce it?

Link to comment
Share on other sites

Would it be possible for you to increase the rate in which AI stations consume their materials?

Are we talking about newly generated stations or old ones? The old ones don't have as many production centers, so it takes them longer to produce.

 

Please fix this issue with AI stations who have a max capacity to hold items that ranges from 0/0 to like 0/10, that's kinda...dumb -_-

Can you give a seed and sector where this happens so that we can reproduce it?

 

Talking about AI stations, they consume their items so slowly that players end up overproducing(for making money early on, since you tripled the cost of starting stations which was honestly a horrible move) and can't really do much with the resources, since the stations in every system you go to will be full from your sold materials.

 

Also, it's random when AI stations that generate will have extremely low buy/sell amounts.  I've still seen sectors that have 0/0 stock for items, or 0/10 as their max.

Link to comment
Share on other sites

Talking about AI stations, they consume their items so slowly that players end up overproducing(for making money early on, since you tripled the cost of starting stations which was honestly a horrible move) and can't really do much with the resources, since the stations in every system you go to will be full from your sold materials.

 

Also, it's random when AI stations that generate will have extremely low buy/sell amounts.  I've still seen sectors that have 0/0 stock for items, or 0/10 as their max.

Every 30 seconds with a probability of 50% (so effectively every minute) 1-6 of one random good gets removed from the station in loaded sectors. It is defined in /scripts/lib/tradingmanager.lua

function TradingManager:useUpBoughtGoods(timeStep)
    if not self.useUpGoodsEnabled then return end

    self.useTimeCounter = self.useTimeCounter + timeStep
    if self.useTimeCounter > 5 then
        self.useTimeCounter = 0
        if math.random () < 0.5 then
            local amount = math.random(1, 6)
            local good = self.boughtGoods[math.random(1, #self.boughtGoods)]
            if good ~= nil then
                self:decreaseGoods(good.name, amount)
            end
        end
    end
end

 

The OOSP mod has -for a few versions already- the ability to simulate this behavior in not loaded sectors

Link to comment
Share on other sites

Did crew workforce requirement change? Officer workforce requirements seem to be based on workforce requirements, not actual crew count. Here's the 3 columns for crew, produced workforce, required workforce, from engineer down to pilot.

 

Crew

9

12

6

28

20

total 75

 

Produced workforce

21.5

30

15

60

20

--

total 146.5

 

Required workforce

15

30

15

59

9

--

total 128

 

Now the officers, from sergeants down to commanders.

 

Crew

6

5

1

 

Produced workforce

13

5

1

 

Required workforce

12

3

1

 

 

Sergeants workforce requirement is 12, but I have 75 crew (so, sergeants workforce req should be 7, or used to be). Lieutenants workforce is 3, but I have 6 sergeants (so, lieutenants workforce req should be 1, or used to be). Commanders workforce requirement is 1, but I have 2 lieutenants (so, commanders workforce req should be 0, or used to be).

 

Instead, it seems that officer workforce requirements are now based on crew workforce requirements for sergeants calculation, and so forth up the chain of officers. So, need 12 sergeants because need 128 crew workforce, need 3 lieutenants workforce because need 12 sergeants workforce, and need 1 commander workforce because need 3 lieutenants workforce.

Link to comment
Share on other sites

Talking about AI stations, they consume their items so slowly that players end up overproducing(for making money early on, since you tripled the cost of starting stations which was honestly a horrible move) and can't really do much with the resources, since the stations in every system you go to will be full from your sold materials.

 

Also, it's random when AI stations that generate will have extremely low buy/sell amounts.  I've still seen sectors that have 0/0 stock for items, or 0/10 as their max.

Every 30 seconds with a probability of 50% (so effectively every minute) 1-6 of one random good gets removed from the station in loaded sectors. It is defined in /scripts/lib/tradingmanager.lua

function TradingManager:useUpBoughtGoods(timeStep)
    if not self.useUpGoodsEnabled then return end

    self.useTimeCounter = self.useTimeCounter + timeStep
    if self.useTimeCounter > 5 then
        self.useTimeCounter = 0
        if math.random () < 0.5 then
            local amount = math.random(1, 6)
            local good = self.boughtGoods[math.random(1, #self.boughtGoods)]
            if good ~= nil then
                self:decreaseGoods(good.name, amount)
            end
        end
    end
end

 

The OOSP mod has -for a few versions already- the ability to simulate this behavior in not loaded sectors

 

Im not a programmer or a moddler now but I think if there is a way to do this discount function once *****when player entered the selected  sector***** will greatly increase game performance.

have all activated sectors' factories checked every 30secs will of course costs a lot.

The OOSP mod used to lag my dedicated server seriously. I dont think 30secs is a good idea. If there is no way to mod that I believe in Koonschi will do something on it.

Link to comment
Share on other sites

Im not a programmer or a moddler now but I think if there is a way to do this discount function once *****when player entered the selected  sector***** will greatly increase game performance.

have all activated sectors' factories checked every 30secs will of course costs a lot.

The OOSP mod used to lag my dedicated server seriously. I dont think 30secs is a good idea. If there is no way to mod that I believe in Koonschi will do something on it.

This is exactly the way, the mod works. When a player enters an empty sector (where no other player is in), it simulates all production and consumptions of all factories and consumers, and adds goods to trading posts. Even better were a callback function (wich does not exist in script API) like "OnSectorActivate" and "OnSectorDeactivate". Maybe this should be added to the API.

 

Link to comment
Share on other sites

Hey bros I got a question. So As I am new to Avorion (And forums as well), I don't know how to purchase/where to purchase the game. If someone could please reply to me and give me a link or something that would be much appreciated.  ;D ;D ;D ;D

Link to comment
Share on other sites

Hey bros I got a question. So As I am new to Avorion (And forums as well), I don't know how to purchase/where to purchase the game. If someone could please reply to me and give me a link or something that would be much appreciated.  ;D ;D ;D ;D

 

It's only for sale through Steam

Link to comment
Share on other sites

I tried the beta branch, and built four stations in an empty sector.  I used the new configuration tab in the buy/sell menu to set the factories to actively request traders for both buying and selling.  It seemed like each station would have exactly one ship in sector at a time.  If it ran out of a product (even if it didn't literally have 0), a ship would come bringing 500 of the good, dock with the station, and charge me for the goods; and then the station would gain 500 of that good.  It was smart enough that when one factory needed 15 Wires, and my station had 5 Wires, it still got more supplies from a ship; it didn't wait until the station had 0 wires (which would never happen).  When the station had enough materials for production, ships would come and buy the products, even if there were only, say, 8 available for sale.

 

One problem occurred when a ship for one of my stations bugged out.  It was carrying Plastic, an ingredient for my High Capacity Lens station.  It was near the station, but was not docked- I would guess it never docked, since my station never had plastic, and the ship always had it when I inspected it by flying close by.  The ship also did not move.  I ended up destroying the ship.  The ship belonged to my allies, so this tanked my relationship with them to -100,000, which made playing miserable.  But the station did start receiving more shiploads and functioning again.

 

More importantly, it seemed to break the economy everywhere else in the galaxy.  All factories I visited had 0 of all their products available for sale.  I was effectively totally unable to buy any products.  This was more of a downside than being able to practically get my own stations producing things was of an upside.

 

There seemed to be a bug where if I deleted a block in build mode, it would only give me a partial refund, equal to the block repair cost; and it would display a warning notification for a damaged ship until I exited build mode.  If I applied a template instead, it seemed to give me a full refund (but that's obviously less flexible).

 

Ultimately, I opted back out of the beta, because all the other stations had 0 stock of their products, and that hurt the gameplay experience too much.  But it definitely had the beginnings of a fun little system.

Link to comment
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
×
×
  • Create New...