Code Monkey home page Code Monkey logo

Comments (8)

erosson avatar erosson commented on September 28, 2024

https://www.reddit.com/r/swarmsim/comments/2g97zf/what_is_your_strategy_for_using_injections/ckhinow

numbers are getting bigger, this is getting more urgent

otoh, with the inject cap coming (#65) this might become less urgent

from swarm.

erosson avatar erosson commented on September 28, 2024

this'll have to wait for the next reset. #123 makes 0.2.0's release too urgent.

hopefully the new limitations on clone (inject) keep numbers smaller this time. there's lots of other new bonuses though, and more clones are possible than before if games stretch over weeks... we'll see.

from swarm.

erosson avatar erosson commented on September 28, 2024

people are getting above 1e180 without prestige bonuses. I think prestige is going to make this more urgent.

from swarm.

erosson avatar erosson commented on September 28, 2024

good news: bignum wasn't too tough to get functioning. replace all js-math with math.eval().

bad news: it's unusably slow. like, with just meat/drones/larvae, I couldn't get more than 2 fps.

put the changes in their own branch for now. it'll need some profiling and optimization before it's usable - I'm sure there's some overhead to math.eval(). those are big refactorings though, and profiling is misery. it doesn't look like prestige will exceed 1e300 anyway, let's wait and see if testers agree.

from swarm.

erosson avatar erosson commented on September 28, 2024

took another shot at this with math.js functions and then with decimal.js. both were faster than math.eval, but still very very laggy - not promising enough to spend more time on this.

from swarm.

erosson avatar erosson commented on September 28, 2024

this is a priority again; it's possible to reach 1e300 legitimately and I'd rather not nerf everything

(finally) got it up to a playable speed! reworked caching everywhere; all memoize() calls are gone, replaced by a Cache class on game with fewer coarse-grained clearers (tick for counts, update for most others). a couple of tests are still upset and some template formatting is still screwy (percents) and some less visible stuff (achievements, analytics, statistics) is still busted, and the 1e300 cap is still (deliberately) in place; nothing showstopping. I now think this is doable after all.

having more types of units active makes a noticeable difference in speed: 80% idle with just drones, to 15% idle with all meat units active. same thing in prod though, so it's okay.

chrome cpu profiler is awesome. (wish I could say the same for memory, #168)

from swarm.

erosson avatar erosson commented on September 28, 2024

pushed this to publictest, at last. caught everything I could. the 1e300 limit's not yet lifted, but decimal.js is deployed on publictest for real. let's see what people break before raising the limit.

from swarm.

erosson avatar erosson commented on September 28, 2024

still a few bugs, but we're doing well enough to call this done and raise the cap. start with 1e400, raise it more later.

from swarm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.