URI:
   DIR Return Create A Forum - Home
       ---------------------------------------------------------
       Zerg Hex Forum
  HTML https://zerghex.createaforum.com
       ---------------------------------------------------------
       *****************************************************
   DIR Return to: Builds & Guides
       *****************************************************
       #Post#: 2256--------------------------------------------------
       Re: Zerg Hex Science
       By: BigNoob Date: September 27, 2021, 10:54 pm
       ---------------------------------------------------------
       Cool stuff.
       I've only read your eco part, so I will only address that.
       1 - Please don't follow the pretentious economics bullshit of
       calling your model's first order conditions "laws"
       1 - Your model will be much more meaningful if you made it
       independent of supply count. Until you make it capable of
       emulating a more realistic scenario, where your already
       simplified parameters are spawners and spires only, all these
       results fail to be robust to any perturbation, because under the
       restrictions of your assumptions, the next move is dictated
       strictly by your supply number. An already more realistic case
       is to make your supplies worth 45 each, which introduces
       imperfect supply usage. How should we manage our growth policy
       then?
       2- Your first order conditions already don't hold,  because the
       marginal eco growth provided by both spawners and spires depend
       on the count of the other. You're currently treating x and y as
       purely exogenous variables, where in truth they're deeply
       endogenous; you shouldn't treat implicit variables as explicit.
       3 - Ignoring (2), I really like what you did, making spawner and
       spires depend on the supply count, and then finding their
       convergence! Now that I think about it, it makes sense that the
       upper bound would be below 4, since at the stable what matters
       is the number of buildings, and the tradeoff is 1 spire vs 3.75
       slowlings. I think you might have forgotten to include that each
       spire increases income by a flat rate of 30 (or maybe you did,
       and I just suck at reading).
       5 - I don't know if you've taken macroeconomics yet, but it's
       been verified (to the extent that economics can) that economic
       growth is exponential (hence why macroeconomic estimates are
       usually presented with a log link). You could definitely try
       some curve fitting, but looking only at the tail values, given
       how quadratic and exponential functions are decent
       approximations of each other at small values.
       8 - Income growth is quadratic and mineral bank is cubic? It
       doesn't make sense that your unspent resources grow faster
       than... your only source of income. If we focus only on the
       economy part of the game, then let's suppose building a spire, a
       spawner, and supply+ are all abstracted as buttons. Then
       according to that perfect machine, your eco bank should be a
       thresholded function of your income. Meaning that the absolute
       upper bound of your mineral bank is the cost of the next supply
       + some overflow (since spawner and spire both cost less than the
       lowest supply upg). Did I perchance misunderstand mineral bank
       for unspent resources instead of lifetime income?
       I just want to reiterate that I find it hard to believe that eco
       isn't exponential. The game economy is best modeled as a partial
       differential equation of spawners and spires, (both of which are
       implictly defined by the order). Even if we made either spawners
       or spires a form of numeraire, or even the net supply
       formulation, your ODE's growth is strictly dictated by your
       current endowment. Any ODE that satisfies any form of y' = y is
       an exponential function.
       This is a really cool thread! Does your current code roadmap
       allow for eventual curve fitting? I'd love to be proved wrong,
       cause a non-exponential economy would be really interesting to
       see.
       #Post#: 2257--------------------------------------------------
       Re: Zerg Hex Science
       By: guguizg Date: September 28, 2021, 7:46 am
       ---------------------------------------------------------
       First of all thank u for the feedback i like to see more nerds
       around.
       Now before i adress each thing you said, let me just say that
       english is not my native language so i think a lot of confusions
       were caused by poor word choices and i'm sorry about that xD
       1. What i meant by "law" is that in this system, with those
       concessions, those equations will always be true.
       1. I couldn't make it not supply dependent because supply
       increases with cost at each supply you buy. Therefore i needed
       to factor that increase. It doesn't really matter if the supply
       has 45 or 90 because as i said, I'm not restricting the
       variables to integers, so there is no imperfect supply usage.
       2. I don't think i understood what you ment by exogenous, as I'm
       reconsidering the new "ratio" and new income on each supply, as
       the number of spawners and extractors change. There are no
       outside variables in this system.
       3. I did consider the flat 30 when i said the initial spawner
       value is 54 (flat 30 + 24 initial spawners)
       5. I'm still at introduction to macroeconomics, but maybe
       macroeconomics wont apply to this game. To further investigate,
       as i mentioned, I'm working on a simulator. I'll share some
       preliminar results I got from it. The simulator considers time
       (building time for extractors and spawners too) and all costs
       that are in the game. I'll attach it on this post. To make it a
       fair comparison, I got the simulator to make only slowlings and
       extractors. It can deal with imperfect supply - it will always
       get bellow 4 before buying the next supply. I ran the simulation
       for a milion seconds and this is what i got for income (y axis)
       by time (x axis):
  HTML https://imgur.com/e9vewLD
       This sure doesn't look like a exponential curve, but to confirm
       it, I'll make the y axis in log scale:
  HTML https://imgur.com/YBOwnAt
       I can be wrong as i might be lacking some information or
       something, but i think that given that the simulator is working
       properly (I believe it is) that curve is not exponential.
       8. What i meant by accumulated mineral bank is the lifetime
       income - mineral bank at the end + all spent minerals.
       Unfortunately i don't have knowledge on curve fitting, but if
       want to give it a try i would be happy to check it out. In any
       case i can ask a friend for help - he is studying engineering
       and is nerdier than me so i guess he can do it.
       #Post#: 2258--------------------------------------------------
       Re: Zerg Hex Science
       By: BigNoob Date: September 28, 2021, 11:02 am
       ---------------------------------------------------------
       Here, E and S will refer to extractor/spire and spawner.
       1 - I think my intended use of imperfect supply usage actually
       refers to dead weight loss. For example, if we're at 45 supply,
       then the only way to use all of that 45 supply is by making 3
       spires, since 30 mod 4 != 0. We can't have fractional spawners,
       so this adds to the cumulative inefficiencies.
       I also think that you shouldn't include cost of supply in your
       best growth scenario, therefore making your model depend
       strictly on E and S. The impact of increasing supply cost, I
       believe, is strictly to implement forced inefficiencies: you
       can't stay at perfect mineral usage (i.e. 0 unspent resources)
       because you need to wait for enough minerals to upgrade supply
       after using all of it. The linear increase in cost is just a
       penalty on time, which should converge to 0 at a large enough
       scale anyway, since your eco will grow by much more than 125 per
       supply. That is to say that cost of supply does not affect your
       build order.
       2 - Notice that your utility function, U(E,S) is such that your
       decision to make an extra E depends on how many s you have. This
       implicitly creates a relationship between E and S, such that
       your number of spires is actually a function depending on
       spawners.  Similarly, your next building should be E if you have
       enough S, so spawners are also a function of E. This means that
       the full characterization of your utility function is U( E(S),
       S(E) ), since they depend on each other. This is because your 2
       inputs are complements, much like how capital K needs labor L to
       be productive, and L is more productive if they are tools
       (capital). Intro econ classes will teach them both as explicit
       variables, I think because of envelope theorem, which states
       that 2nd order effects and beyond resolve themselves, but don't
       take my word on this.
       Disregarding the previous paragraph (because now that I think
       about it, the effects might honestly be too small for us to
       care), I think at the minimum, your model should be U(E,S) and
       not U(n). This gives you the flexibility to test situations such
       as "what I were to lose 1 entire side? (i.e. -2E, - 4S)", or
       even consider "how long would it take me to get back to normal
       3T eco if I had {1,2,3} 2:15 leavers?
       3- Thanks for clarifying. I think your utility function should
       also have intercept whatever your hive gives per minute, since
       you mentioned that I = S * E + H. Of course, setting H to be
       your intercept also means that you would need to make U(E,S) =
       (S + 30) * E and set your initial conditions to whatever it
       needs to be.
       5- That definitely does not seem exponential! That's pretty
       cool. Your time range was definitely long enough, and that log
       curve is very very far from being straight.
       Great stuff
       #Post#: 2259--------------------------------------------------
       Re: Zerg Hex Science
       By: guguizg Date: September 28, 2021, 1:21 pm
       ---------------------------------------------------------
       I see your point. It was very hard for me though to make all of
       this with maths. There was a point when me and my friend
       realized we wouldn't go much further with pure maths and a
       simulation was much needed. The model just has too many
       variables to factor and when u disreguard them the results make
       less sense. I don't have good enough tools to make the model
       considering all of the variables, so i just stopped at that
       point. Hopefully a simulation can carry me further.
       Anyway, thank you for the input, it's cool to see debate getting
       at this level on the community.
       #Post#: 2270--------------------------------------------------
       Re: Zerg Hex Science
       By: guguizg Date: October 19, 2021, 9:27 am
       ---------------------------------------------------------
       Spawner position optimization
       Zerg's economy depends heavily on the spawner count. Therefore
       it's important to have all of them secured so the terran can't
       kill. On the other hand, the further away you place them, less
       efective they will be. All spawners have a max capacity, meaning
       that a slowling spawner, for exemple, can only have 2 slowlings
       on the map, and when there are 2 on the map already, it stops
       producing. That means that the general goal at optimizing a
       spawner is to have the unit killed as fast as possible, which
       means that it will be always producing.
       There are a few ways to improve a spawner's efficiency:
       - Capacity upgrade: can have more units on the map, but costs
       minerals (delaying eco)
       - Positioning: getting the spawners closer to the terran makes
       units die faster, but increases risk too (terran can kill your
       eco)
       - Speed: Speed upgrades make units go faster and therefore die
       faster, but also cost quite a lot of minerals
       - Traffic: Depending on your spawner positioning, units can get
       stuck on a funnel or be forced to take a longer path, which
       makes it take longer to die
       On this post I'll try to focus on positioning.
       In the attatchment I got the game stats in Excel. Each unit has
       a different movement speed and creep boosts the speed in
       different values for each unit, so I can tell already that the
       results will not be uniform - each unit will have it's own
       conclusion.
       Metodology:
       Having the movement speed on and off creep, the max unit
       capacity and the spawning time, makes it quite easy to calculate
       where the unit should die compared to where the spawner is
       placed. It's spawning time * spawn capacity, which gives us the
       optimal death time, and spawning time * spawn capacity *
       movement speed for the optimal death distance. Now, just have to
       place on the map a spawner and calculate where the unit should
       die. Thankfully I already have the map in Excel, I'll attatch it
       again.
       Slowling Spawner:
       To test out if everything was right, I tested the method for
       slowling spawners and this is what came out.
  HTML https://imgur.com/qEHm6Db
       This one is for normal slowlings spawners, the black tile with
       the number is where the unit has to die for it to be optimal.
  HTML https://imgur.com/LMfjwNS
       This one is for capacity slowlings.
       Problem:
       This is a very mechanical process, I can't do this for each
       spawner, each speed value, with primal rapid respawn, packed
       mass, it's just too much work. As a follow up post, I'll try
       either choosing the most important ones or figure out a way to
       do it more efficiently
       Note:
       On the Excel attachment you can try yourself to get the optimal
       positions, It considers speed, capacity and the upgrades that
       matter: u put next to "Speed" the speed value (from 0 to 3) and
       for packed mass and rapid respawn put 1 for true and 0 for
       false. The result is in squares, so you can use the map to
       calculate (sucks to make pythagoras each time there is a not
       straight line).
       #Post#: 2277--------------------------------------------------
       Re: Zerg Hex Science
       By: guguizg Date: October 30, 2021, 9:02 pm
       ---------------------------------------------------------
       Walls
       In this post I would like to discuss a very underrated topic:
       walls. Walls are great, they can delay a zerg incoming attack,
       redirect zerg unit flow and even keep one side or your entire
       base safe (on one gas and high ground situations). Walls are
       crazy. But there are a lot of unanswered questions I would like
       to answer.
       Construction Yard:
       "Nearby structures take 40% less damage and regenerates slowly"
       1. How slow is slowly?
       5HP/s
       To test this out, i used a few creepers to shoot at a wall
       inside yard range to see how many it took to start making the HP
       go down. When you have 5 creepers it's stable, 4 it
       regenerates and 6 it decreses HP. So, the regeneration rate is
       equal to the dps of 5 creepers * 60%, because of the 40% damage
       reduction.
       4dmg/1,2seconds, but the wall starts with 2 armor so
       2dmg/1,2seconds = 1.667
       1.667 * 5 creepers = 8.333
       6.667* 60% = 5HP/s
       Note that this is a aproximation, the number might be slightly
       off.
       Unified Armor:
       "Walls share health with one another to protect the weakest
       areas"
       This is a very interesting upgrade and it works in a misterious
       way for me. In this post I would like to uncover the mistery.
       2. Is there a range for unified armor?
       Yes.
       To test the "range" of unified armor I used a slowling to attack
       a row of walls. The wall under attack broke before all of the
       other walls were with the same HP, so in a way the health is not
       shared, it works in a different way. When the wall under attack
       broke, the other ones had the following HP
       55, 70, 95, 110, 175, 175, 175...
       So in that aspect, the unified armor has a maximum range of 4
       walls.
       On the other hand, if instead of a low damage zergling you have
       a high damage unit like a infused roach or a brutalisk, the
       range can change. For instance, if a unit 1 shots the wall,
       unified armor does not apply. In a way, saying that the health
       is shared is false advertisement xD
       3. So if the health is not shared, how does it work?
       I don't know lol. I cant figure out, seems to work pretty
       inconsistently so i can't figure it out. I also can't
       understand the pattern from the last question which appeared
       (the same exact values) every time i tested it.
       Defenders and SCVs:
       4. When is it worth it to link the defender?
       Defender link: "Transfer 40% of repair rate to nearby
       structures"
       That means that each structure under attack gets 40% of the
       regen, meaning that its start being worth it when (number of
       structures * 40%)>100%, which happens at 2.5, so when 3 or more
       structures are under attack.
       Also, if you have unified armor, it is definitely worth it to
       link the defender, because as discussed previously, the unified
       armor spreads the dmg to other walls which are going to be
       healed.
       5. How much is the SCV repairing rate? Is it better than a
       defender?
       Aproximately 8HP/sec. If that checks out, means that the SCV has
       80% of the repairing rate of a defender.
       6. Does SCV repairing rate stack with armor upgrades like the
       defenders?
       Yes. To test this, I used tanklings (they deal true damage) and
       upgraded the armor a lot. Turns out SCVs started repairing
       faster with the upgrade. Hard to tell how much, because the game
       doesn't give numbers, but it is faster.
       Other topics
       7. How good is a anti-torra wall
       8. Is it better to have a bigger wall and more surface area or
       less walls with less surface area?
       9. How many armor upgrades do you need to survive on the high
       ground for each attack level?
       To be continued...
       Also, if you have other questions or if you have answers to the
       unanswered questions you can comment them :)
       Questions 3 and 6 haven't been properly answered.
       #Post#: 2313--------------------------------------------------
       Re: Zerg Hex Science
       By: guguizg Date: February 4, 2022, 2:45 pm
       ---------------------------------------------------------
       How long does an italis take to pay for itself?
       Italis don't use energy to shoot, so in the long run it will
       save you energy. Considering that it costs 25,000 energy to make
       it, when does it start to create surplus energy?
       Metodology:
       I'll compare the italis to different marine stages and different
       zerg units. I wont consider overkilling units, which is a bigger
       problem for the italis considering it has higher damage, so
       consider a margin of error.
       In one of the first posts i have calculated the energy
       efficiency for different marines, different upgrades against
       different zerg units. I'll use those values.
       A. Tier 1 marines with shattering, conservation and penetration
       against armor 2 target (roaches and big spine): 6 damage per
       energy outside armory and 8.75 in armory range.
       B. Tier 2 marines with shattering, conservation and penetration
       against armor 2 target (roaches and big spine): 5,625 outside
       armory and 7.5 in armory range.
       C. Tier 2 marines with shattering 1 and 2, conservation 1 and 2
       and penetration against armor 2 target (roaches and big spine):
       13.125 outside armory and 15.75 in armory range.
       D. Tier 2 marines with shattering 1 and 2, conservation 1 and 2
       and penetration against armor 7 target (brutalisks): 2.625
       outside armory and 2.625 in armory range.
       E. Tier 3 marines with shattering 1 and 2, conservation 1 and 2
       and penetration against armor 2 target (roaches and big spine):
       12.5 outside armory and 13.75 in armory range.
       F. Tier 3 marines with shattering 1 and 2, conservation 1 and 2
       and penetration against armor 7 target (brutalisks): 6.25
       outside armory and 7.5 in armory range.
       G. Tier 3 marines with shattering 1 and 2, conservation 1,2 and
       3, penetration and elite scope against armor 7 target
       (brutalisks): 12 outside armory and 14 in armory range.
       Now considering that the italis do 32x4 damage with a 1.2s
       attack speed, the damage per second will be 100 to armor 2
       targets and 83.33 to armor 7 targets. Considering the cost of an
       italis to be 25,000 energy, I'll multiply that by the damage
       each setup (A to G) would have dealt to figure out how much
       damage the italis have to deal to be the same as 25,000 energy
       from that marine. With the damage and the damage per second,
       it's easy to calculate the seconds (or minutes) it will take to
       pay for itself.
       Results (in minutes):
       A. 35.5 and 25
       B. 31.3 and 23.4
       C. 65.6 and 54.7
       D. 13.1 and 13.1
       E. 57.3 and 52.1
       F. 37.5 and 31.3
       G. 70 and 60
       I'm very impressed at those numbers, specially considering how
       much they're favoring the italis - only considering 2 armor or
       more and not considering overkilling units, which happens way
       more to italis than marines. This is also considering that
       italis are shooting non stop, and marines too which doesn't
       always happen.
       Conclusion:
       In general, i don't think getting italis is a big energy saver,
       as waiting more than 30 minutes for it to just pay for itself
       might take longer than the game itself. The fastest "debt
       payment" scenario is vets vs brutalisk and i'll be impressed
       with only italis can hold brutas for 13 minutes while you still
       have veterans. It can help you survive, but if you're looking to
       save energy, there are probably better options.
       #Post#: 2329--------------------------------------------------
       Re: Zerg Hex Science
       By: guguizg Date: June 25, 2022, 12:48 am
       ---------------------------------------------------------
       Comparing solo zerg vs duo zerg
       This is a hot topic. There is no discussion that if the zerg has
       perfect micro (I know it's impossible), it's objectively better
       to have a solo zerg compared to a duo zerg. The way to go around
       that as duo zerg is eco sharing - one zerg sends all their
       minerals to the other so they complete a full supply and then it
       goes the other way around, pretty much simulating a solo zerg
       experience. Altough that is better for the economy, it takes up
       a lot of APM and coordenation which is a great cost, but how
       better is it?
       Using my simulation code, I made a duo zerg variant. Considering
       that the zerg does what is best for the team (supportive), and
       not only for himself (individualistic), the results show that in
       the long run being solo/sharing eco perfectly can be 18% more
       efficient. It's important to note that results on the early game
       are a little different, ranging from around 10-15%. I plan to
       improve on the what-to-build algorithm, and if I do, I'll remake
       this post, as it might impact the results, for now, these are
       Heuristic results. Here is the graph to visualize the
       difference:
       The y axis is the result of the division of the solo zerg income
       by the duo zerg income and x is time in seconds
  HTML https://imgur.com/rHEhMxh
       In case you want to understand more about what I ment by
       individualistic, here it goes. When it's 2 zergs, adding a
       extractor will only benefit you, but adding a spawner will
       benefit both you and your teammate. If you don't consider the
       positive externality of building a spawner (increases your
       teammate economy), both zergs get way more extractors than it's
       optimal to. Here are the results for a individualistic zerg.
  HTML https://imgur.com/zSue9Fr
       #Post#: 2330--------------------------------------------------
       Re: Zerg Hex Science
       By: Turb007 Date: June 30, 2022, 1:54 pm
       ---------------------------------------------------------
       [quote author=guguizg link=topic=244.msg2277#msg2277
       date=1635645725]
       9. How many armor upgrades do you need to survive on the high
       ground for each attack level?
       [/quote]
       Assuming 3 defenders linked to yard and 8 defenders healing wall
       (1 healer for each wall/depo), no scv repair.
       Terran needs this wall level to counter zerg attack (I am using
       roach/rav for now):
       Zerg Attack:
gopher.createaforum.com:70 /forums/zerghex/p/244/1:446: port field too long