Skip to content

Latest commit

 

History

History
678 lines (460 loc) · 38.7 KB

2020-01-06.md

File metadata and controls

678 lines (460 loc) · 38.7 KB

< 2020-01-06 >

1,907,953 events, 945,107 push events, 1,499,074 commit messages, 112,674,027 characters

Monday 2020-01-06 02:21:40 by ilammy

Translations into "en", "uk", "ru", "jp"

Well, that's all that I know. For English it's straightforward, the only tweak is to use typographically accurate quotes and apostrophes. Also, drop the "Copyright" word from Info.plist because no one seems to use it anymore in the software that I see on my Mac.

I'm a native Ukrainian and I got quite surprised to find out that they translated "screen saver" as "екранний ефект". Even Russian "заставка" is better than the usual calque "хранитель экрана". Seriously, it's like as formal as you can get. I was initially quite pissed at that because it made translation of the configuration sheet quite hard, if I were to keep the joke. Well, eventually I thought up something.

As for Japanese... just bear with me and excuse me, okay? I can't do much as on only second-year vocational student. I hope I did not insult anyone too much there.

Oh, yeah, the joke. Here's what macOS uses a caption for the button:

English: Screen Saver Options... Ukrainian: Параметри екранних ефектів... Russian: Настройки заставки... Japanese: スクリーンセーバのオプション...

so I tried playing around that. English and Japanese use a straight take on "options" which have the same connotations in both languages, while for Ukrainian and Russian it had to be more creative.

Notifications were also quite hard to get right because of the limited space. By some sort of miracle I was able to fit everything I wanted to say in Japanese in two lines, even nicely split at sentence boundary. (But yeah, I had to insert a space for the text to break before European quotation mark that's customary for computer stuff.) However, Ukrainian and Russian were not so lucky (oh, we love long words) so in some forms they have lost some of the honorifics. Well, they sound weird anyway...

Also, wtf is CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED? Xcode put this tongue twister when I added more localizations, lol


Monday 2020-01-06 05:31:55 by yokkm

Create main.py

expected output {'OriginalText': '1 h8 night nigga nude fuckkk shittt school mass fuckkkkkkkkkk shooting mast3rb8 suicide retards kill myself m0th3rfuck3r 2MORO', 'FinalOutput': 'i hate night night n*** f*** s***** school mass f*** shooting m********* s****** r****** k*** myself m*********** tomorrow ', 'HatespeechType': 'threat', 'CommentTag': 'Clarify', 'AlertLevel': 3, 'HatespeechTag': 4, "ss['compound']": -0.9836, "ss['neg']": 0.738, "ss['pos']": 0.0, 'sonar_topclass': 'hate_speech', 'sonar_hate_score': 0.5964515083599946, 'sonar_offen_score': 0.4033855317557128, 'sonar_none_score': 0.00016295988429268054}


Monday 2020-01-06 10:56:16 by Joseph Reddington

11/12/19 09:36 to 09:59, Doing +EQT social media, clearing workspa

11/12/19 09:55 to 11:16, +EQT WWW problem

16/12/19 11:15 to 12:06, Personal Project - moving todo.txt to projects.

16/12/19 13:01 to 13:42, work on Wheel of life more

16/12/19 15:54 to 16:09, Writing to Nova

16/12/19 16:17 to 16:43, Brainstorm

16/12/19 19:50 to 20:32, Gratitude

16/12/19 20:32 to 20:37 +EQT Quick gmail

19/12/19 09:25 to 11:45, Working on expenses +EQT

  • Moved Littlefinger to Google Drive.
  • Tided up the sheets themselves a lot
  • Found a expense from like March 2018 that needs claiming
  • Easier to export to Pdf here
  • Almost 3k to claim (I suspect it will go down to about £2k)
  • I have 27 receipts to find

19/12/19 11:45 to 12:15, Short break after receipts

19/12/19 12:15 to 12:31, back on expenses +EQT

19/12/19 12:31 to 12:52, Lunch break +Family

23/12/19 08:37, working on getting a useful funder:

23/12/19 08:37 to 09:25, +EQT working on funding

23/12/19 09:27 to 09:48, +EQT email


Monday 2020-01-06 11:50:24 by Marko Grdinić

"11:05am. I am still deep in thought. I've internalized most of my motivation, but I just have that last 10% or so left.

Let me review.

I think it really is okay to lose hope in math at this point. Mainstream math is pretty much an enemy - their practitioners are merely posers who cannot even into numbers properly. And constructive math can be expected to be too difficult to give me any sort of insight into the problems that I am facing. While working in Coq or Agda, I've yet to do even a single proof that gave me insight I did not have before. The one time I did get insight was that first CFR proof where I switched to randomized testing and did in 5 days what I could not do in a month in Lean and Agda.

So I think I am justified in leaving math aside based on practical experience. This was my mode of operation even before I learned formal theorem proving. Going forward, what is going to change is that I am not going to take any of the proofs seriously unless they are computable and I can do things like write randomized tests for them.

But any proofs for ML are likely to be too trivial to really tell me anything of importance.

https://stackoverflow.com/questions/59263530/how-to-prove-that-the-halving-function-over-positive-rationals-always-has-an-exi/59304233

Programs being proofs means that a program is half of a proof already. PLL explained to me how to satisfy the termination checker here, but is what he suggested really an improvement over the original? I am not sure. There is something suspicious about having to prove termination in some inexpressive sideways mechanism.

But given how difficult even this simple thing would be, how could anybody prove anything of important for the CFR algorithm or anything other ML related? I have no idea.

11:15am. As a method of doing science, randomized testing really is the way to go. I am going to lean on it when it comes to doing paper proofs.

Let me go to the next point.

I think that as a method of getting better at AI, making better libraries and languages does make sense. Quantity is its own quality, and might turn out to be the primary driver not just for us weak humans, but in the post-Singularity era. Maybe the lofty height I'll reached in Spiral v0.2 might turn out to be an ideal.

This was one of my motivations for starting work on the original Spiral.

The next point.

I've been thinking - suppose I have only six months or two years to live? What would I do? Would I live out the remaining days playing games or having fun? Or would I work on Spiral?

I would definitely work on Spiral. I would regret not being able to witness the Singularity, but I would complete the language and hope it is helpful to whomever reaches it.

The next point.

As I've said, I really am no longer motivated by any specific thing like I was before. I already did the agent and the ML library, so that does not enthuse me anymore.

Even though I said that I would work on Spiral, what I really want is to make gains in AI. Spiral is secondary in mind to this.

AI. It all comes to AI. I want to exploit AI. I want to make its power my own.

Accepting that there will be severe limits on how well ML algorithms can be understood is a gain in its own right. I will never be able to understand them as well as regular programs, but processes will have their own way of handling.

11:25am. I need to fire up my competitive spirit once more. My competition are ultimately Pythonlings, and a bunch of posers who can't even bear to deal in actual numbers and constantly make stuff out of thin air.

11:30am. Forget what came before. Forget the past mistakes. Do it harder, faster, more powerfully next time.

11:35am. Since the best way to get better at the whole is to get better at the basics, I really do need to level up that one last time by completing Spiral v0.2.

But what will really keep me going is the resurrection of my dreams. They will give me the strength to keep fighting.

11:40am. Can I really be the best in the world, can I really defeat them by going to Python? Of course not. You don't get to be the best by accepting limitations that can be avoided.

Doing more and not cutting corners, really is always better than taking the easy way.

I am not really creating a language here, but my own power that will sustain me.

11:45am. It is not really that I am going to be relying on the others to come up with all the innovations.

I had have my own ideas.

But after 2018, I suffered a loss faith in just what exactly can I elucidate about them.

If I change my mindset from wanting to formally prove things about them, to testing them is a really big arena, maybe I could accomplish something.

...

Yeah, that is right.

I made that agent, but then got peeved that once I increased the sequence length, the performance of NNs just fell of a cliff. I had it in my mind that I had to make a GPU library from the onset.

I had it in my mind what needed to work, and got disillusioned when my experiments rather than clearing up the ideas only created ambiguity. I just had no idea how to deal with this.

11:50am. It became a wound that I've been carrying all this time.

It is time that it heals.

11:55am. I am going to stop here for breakfast.

I think it might be fine that for the first time in 5 years, I take an extended break for a week or so just to stoke this fire.

12:45pm. Done with breakfast.

Let me just rest for a while.

Yeah, I cannot accept formal theorem proving as a means of understanding.

Suppose you have some program and you want to understand it - formal theorem proving requires writing a more complicated program in order to encapsulate that. This really a problem. Because if you do not understand the original thing, you won't be able to write the proof either. And if you understand the original thing then actually proving things about it is superfluous.

As a method of generating understanding, FTP really has much to be desired."


Monday 2020-01-06 12:33:29 by Marko Grdinić

"1:15pm. I think I will just rest for a while.

For the past 5 years I've been a fucking robot, and this is the first real crisis that I've ever had since that time.

You can't just recover from having your notion of understanding broken just like that.

Maybe I do have a bit of a mathematician in me. As a programmer I am always on the lookout for novel patterns, algorithms and techniques. Those to me are real gains. This is why I could not stand to abandon functional programming. This is why I could not bare to code GPU kernels in C. That is why I wanted Spiral. It was for the sake of the skills that I had nurtured and not for its own sake.

A code monkey would not have taken this trajectory.

1:20pm. Before, I do anything else, I need to come to an understanding of understanding.

Before I can make gains, I need to make sure that I understand what they are first.

Just imagine it for a while. Make friends with it.

I am going to allow myself a vacation just this once.

For the rest of the week I am not going to hold myself obligated to work. I'll try to make it less than a week as I do not want to waste time, but during this time I am just going to submerge myself in these thoughts.

1:25pm. Fundamentally, understanding is what you interact with. I use all of my imagination to comprehend programs.

One day, a superhuman agent might be able to comprehend things in terms of what humans cannot even imagine.

...

Now, since it is Monday, let me check out Tog. Satanophany might be out as well. And I still haven't watched the new Meguca. Also it is really taking MangaDex a while to come back. It is not dead is it?"


Monday 2020-01-06 12:38:12 by gokiburikin

Shoutouts to DunkOrSlam and the Moist Mob for the gameplay and feedback

Rework Action: Magic Hand so that it retains spread

Rework Action: Zap to be closer to the original concept

Rework Action: Perfect Critical into Damage Plus - Critical. Increases spell critical damage instead of 100% critical chance

Rework Loadout: Spark to fit the new Action: Zap rework

Rework Champion: Digging Projectile to be more effective

Rework Perk: Demolitionist (explosion power and radius x1.5 -> explosion power and radius +200%)

Rework Misc: Hero Mode wand adjustment values

Reduce the spawn probability of Action: Projectile Orbit and Action: Projectile Gravity Well

Rename Action: Modification Field to Circle of Divine Blessing

Reword some spell descriptions

Add Loadout: Charge

Add Loadout: Alchemist

Add Loadout: Kamikaze

Add Loadout: Trickster

Add Loadout: Treasure Hunter

Add the loadout message to the localization file

Add Misc: Chests Can Contain Perks

Add Misc: Legendary Wands (work in progress)

Add a Mini-Boss option to Misc: Champion Enemies

Add Champion: Reward (used for Mini-Bosses)

Add Action: Treasure Sense

Add Action: Nugget Shot

Add Action: Protective Enchantment

Add Action: Chain Cast

Add Perk: Demote Always Cast

Add Tweak: Reduce Stun Lock

Add support for not processing (combining, etc) gold nuggets with the tag gkbrkn_special_goldnugget

Add a gold bonus for killing Hero Mode enemies (re-added since persistent gold was separated from Hero Mode)

Buff Perk: Fragile Ego (damage resistance 50% -> 75%)

Update Perk: Always Cast icon

Update Action: Barrier Trail icon

Deprecate: Action: Shimmering Treasure

Deprecate: Action: Relevation

Deprecate: Action: Super Bounce

Fix Misc: No Preset Wands not including trap room wands

Fix Misc: Gold Decay not properly clearing scripts on pickup

Fix Misc: Target Dummy burning and taking massive damage from fire

Fix Misc: Target Dummy not appearing in the final Holy Mountain

Fix Misc: Hero Mode buffing duplicated wands and loadout wands

Fix Misc: Hero Mode causing support enemies to prioritize you

Fix Champion: Ice Burst spawning projectiles inside of enemies killing them instantly

Fix Champion: Revenge Explosion not using the updated revenge explosion script

Fix Action: Damage Plus - Lifetime and Damage Plus: Bounce icons not matching vanilla icons

Fix Action: Projectile Orbit not working correctly with disc projectiles

Fix Perk: Demolitionist not working on lightning spells

Fix options that were intended to be disabled by default being enabled by default


Monday 2020-01-06 15:07:44 by Will Smith

  • Itch.io

This project is going to be hosted on itch.io, and I did the initial export and configuration this morning. Turns out, you need a title for a game when setting it up on there... and we didn't think of that.

Anyway, the initial draft is up, and it kinda works? It's not public yet, and with good reason; the viewport is way too long on the exported game, and at the same time the game itself is not scaled (so it's actually rendering at a height of 600px). I think it's an issue in the export settings, so I'm gonna fiddle with it. To be honest, it exported and runs on a webpage on itch.io, and that's more than I expected from the first draft.

Anyway, our plane home leaves at 2:30, and with any luck it'll be an uneventful flight. Sara is going to use it as an opportunity to finish up the remaining graphics, I'm going fiddle with the export settings, and we'll hopefully have this uploaded and public before too long.


Monday 2020-01-06 15:12:13 by Marko Grdinić

"1:55pm. It seems it really did get taken down and now it is in a new domain.

https://mangadex.cc/

Let me catch up with my follows.

3:50pm. This break really does my soul a lot of good.

I forgot.

In 2019 I learned theorem proving, but along the way lost sight of what understanding even is.

Understanding is what you interact with. Understanding is play.

I won't lose my way again.

High level functional programming is so great because compared to what came before, it really allows one to compress the size of the program while at the same time increasing readability. Even if that is not the goal of using them, one cannot help but to fall in love with learning new patterns and techniques. Learning is coupled with increasing productivity.

This is what really separates programming from lower ended jobs.

Code monkeys will not understand this.

4:05pm. How do I go beyond my previous attempts? How do I go for automated everything?

I think I was heading in the right direction previously.

Once I fix the compilation issues, add top down typing and fix my attitude I should be able to set myself up for success.

4:10pm. Let me get back to my rehabilitation. The next is Magia. I still haven't gotten to it yet."


Monday 2020-01-06 15:28:11 by Rob Zienert

refactor(*): Move artifactory integration into module (#562)

This PR starts the effort of making Igor build system integrations built as plugins. The first step is to break the integrations into modules so we have a better sense of what the right abstraction are.

I bit this effort off purely to get more experience with real-world plugin implementations that aren't stages. Figured Igor needed some organizational love anyway, and since it's such a small service, it could be completed reasonably quickly (if no plugin bugs arise 😅)


Monday 2020-01-06 16:31:07 by petrero

18.2.Saving a ManyToMany Relation + Joins

Next, in ArticleFixtures, this is where we'll set the relationship. And that means, we need to make sure that TagFixture is loaded first so that the tags actually exist. At the top, add implements DependentFixtureInterface. Then, I'll go to the "Code"->"Generate" menu - or Command+N on a Mac - select "Implement Methods" and choose getDependencies(). We now depend on TagFixture::class. Above, let's first get some tag objects: $tags = $this->getRandomReferences() and pass it Tag::class, and then, let's fetch $this->faker->numberBetween() zero and five. So, find 0 to 5 random tags. And just to make sure you that this does give us Tag objects, dump($tags) and die. Now, find your terminal and run:

php bin/console doctrine:fixtures:load Perfect! These are Tag objects. Oh, by the way, sometimes you may notice that your entity's class name is prefixed by this weird Proxies stuff. When you see that, ignore it. A "Proxy" is a special class that Doctrine generates and sometimes wraps around your real entity objects. Doctrine does this so that it can perform its relationship lazy-loading magic. Actually, check this out: it looks like all the data on this Tag is null! But, that's a lie! As soon as you reference any data on that Tag, Doctrine will query for the data and fill it in. That's lazy-loading in action.


Monday 2020-01-06 16:40:41 by Garima Singh

commit-graph: write changed paths bloom filters

The changed path bloom filters help determine which paths changed between a commit and its first parent. We already have the "--changed-paths" option for the "git commit-graph write" subcommand, now actually compute them under that option. The COMMIT_GRAPH_WRITE_BLOOM_FILTERS flag enables this computation.

RFC Notes: Here are some details about the implementation and I would love to know your thoughts and suggestions for improvements here.

For details on what bloom filters are and how they work, please refer to Dr. Derrick Stolee's blog post [1]. [1] https://devblogs.microsoft.com/devops/super-charging-the-git-commit-graph-iv-bloom-filters/

  1. The implementation sticks to the recommended values of 7 and 10 for the number of hashes and the size of each entry, as described in the blog. The implementation while not completely open to it at the moment, is flexible enough to allow for tweaking these settings in the future. Note: The performance gains we have observed with these values are significant enough that we did not need to tweak these settings. The cover letter of this series has the details and the commit where we have git log use bloom filters.

  2. As described in the blog and the linked technical paper therin, we do not need 7 independent hashing functions. We use the Murmur3 hashing scheme - seed it twice and then combine those to procure an arbitrary number of hash values.

  3. The filters are sized according to the number of changes in the each commit, with minimum size of one 64 bit word.

[Call for advice] We currently cap writing bloom filters for commits with atmost 512 changed files. In the current implementation, we compute the diff, and then just throw it away once we see it has more than 512 changes. Any suggestiongs on how to reduce the work we are doing in this case are more than welcome.

[Call for advice] Would the git community like this commit to be split up into more granular commits? This commit could possibly be split out further with the bloom.c code in its own commit, to be used by the commit-graph in a subsequent commit. While I prefer it being contained in one commit this way, I am open to suggestions.

[Call for advice] Would a technical document explaining the exact details of the bloom filter implemenation and the hashing calculations be helpful? I will be adding details into Documentation/technical/commit-graph-format.txt, but the bloom filter code is an independent subsystem and could be used outside of the commit-graph feature. Is it worth a separate document, or should we apply "You Ain't Gonna Need It" principles?

[Call for advice] I plan to add unit tests for bloom.c, specifically to ensure that the hash algorithm and bloom key calculations are stable across versions.

Helped-by: Jeff King peff@peff.net Helped-by: Derrick Stolee dstolee@microsoft.com Signed-off-by: Garima Singh garima.singh@microsoft.com


Monday 2020-01-06 17:07:26 by petrero

19.2.ManyToMany Joins & When to Avoid ManyToMany{When a ManyToMany Relationship is Not What You Need}

Could we add a join to that query to select the tag data all at once? Totally! Open ArticleController and find the homepage() action. Right now, we're using $articles = $repository->findAllPublishedOrderedByNewest(). Open ArticleRepository to check that out. This custom query finds the Article objects, but does not do any special joins. Let's add one. But.... wait. This is weird. If you think about the database, we're going to need to join twice. We first need a LEFT JOIN from article to article_tag. Then, we need a another JOIN from article_tag to tag so that we can select the tag's data. This is where Doctrine's ManyToMany relationship really shines. Don't think at all about the join table. Instead, ->leftJoin() on a.tags and use t as the new alias. The a.tags refers to the tags property on Article. And because Doctrine knows that this is a ManyToMany relationship, it knows how to join all the way over to tag. To actually fetch the tag data, use ->addSelect('t') That is it. Go back to our browser. The 15 queries are... back down to 8! Open the profiler to check them out. Awesome! The query selects everything from article and all the fields from tag. It can do that because it has both joins! That's nuts!

When a ManyToMany Relationship is Not What You Need Ok guys, there is one last thing we need to talk about, and, it's a warning about ManyToMany relations. What if we wanted to start saving the date of when an Article was given a Tag. Well, crap! We can't do that. We could record the date that a Tag was created or the date an Article was created, but we can't record the date when an Article was linked to a Tag. In fact, we can't save any extra data about this relationship. Why? Because that data would need to live on this article_tag table. For example, we might want a third column called created_at. The problem is, when you use a ManyToMany relationship, you cannot add any more columns to the join table. It's just not possible. This means that if, in the future, you do need to save extra data about the relationship, well, you're in trouble. So, here's my advice: before you set up a ManyToMany relationship, you need to think hard and ask yourself a question: Will I ever need to store additional metadata about this relationship? If the answer is yes, if there's even one extra piece of data that you want to store, then you should not use a ManyToMany relationship. In fact, you can't use Doctrine at all, and you need to buy a new computer. I'm kidding. If you need to store extra data on the article_tag table, then, instead, create a new ArticleTag entity for that table! That ArticleTag entity would have a ManyToOne relationship to Article and a ManyToOne relationship to Tag. This would effectively give you the exact same structure in the database. But now, thanks to the new ArticleTag entity, you're free to add whatever other fields you want. If you generated a ManyToMany relationship by mistake and want to switch, it's not the end of the world. You can still create the new entity class and generate a migration so that you don't lose your existing data. But, if you can configure things in the beginning... well, even better. Ok guys, you are now Doctrine pros! Your relationship skills strike fear at the heart of your enemies, and your ability to JOIN across tables is legendary among your co-workers. Yes, there is more to learn, like how to write even more complex queries, and there are a lot of other, cool features - like Doctrine inheritance. But, all of the super important stuff that you need to create a real site? Yea, you got it down. So go out there, SELECT * FROM world, and build something amazing with Doctrine.


Monday 2020-01-06 17:08:54 by Nick Murphy

Update date of amendments

We discussed the amendments from the fall 2019 meeting during a PyHC telecon on 06-Jan-2020, and approved the changes. We still need to update the list of authors of the amendment.

One topic of discussion during this telecon was on adoption of NEP 29 (which created a community-wide standard for how long to support older versions of Python and SciPy) by PyHC packages. Stuart Mumford suggested that it be okay for some packages to have stricter standards, and that packages can support older versions of NumPy and Python if they so choose. Michael Hirsch brought up that usage/download statistics from a package that supports Python 3.5+ showed that very few people are using Python 3.5 at the moment (and also that Python 3.5 gives the most trouble for the testing matrix). I brought up that core packages like SunPy should follow the guidelines of NEP 29 most closely, while packages that are currently under development and have few users would be okay in supporting Python 3.7+ or even 3.8+ if the development phase is going to last ~1-2 years. We decided that using "should" leaves open enough leeway for us to accept packages that have different requirements. I forgot to mention that I think that we should follow the same guidelines for Astropy (and ideally packages within PyHC) as we do for NumPy.

(These notes are a convolution of what people actually said, and my ability to remember 42 minutes into the past.)


Monday 2020-01-06 17:31:40 by Marko Grdinić

"5:45pm. https://github.com/tensorflow/swift/blob/master/docs/WhySwiftForTensorFlow.md

Usually at this point I would be ending the day, but here I am just continuing from where I left off earlier.

This document is interesting. Right now I am just reading random things.

I think I will just resume tomorrow. I am still depressed, but the fire is starting to burn inside of me.

Since I do not have anything better to do, I should aim to become the best there ever was. I am not going to achieve that by sitting here doing nothing.

I want to have fun building the new language and compiler. I want to find new patterns and techniques like I had done earlier with impure memoization.

5:50pm. I think that this time I am just going to skip the GPU backend as GPUs are absolute shit for RL. They are beyond useless, worse than CPUs.

Something else will turn up, and hopefully by that point I will have gotten some donations to be able to afford an upgrade to my rig.

"Build times could be improved: Developers with large applications (e.g. over 100K lines of code) are not happy with build times. This continues to be a focus of the Swift development community and is expected to improve over time, but this shouldn’t be a problem given the comparatively small size of machine learning models."

Interesting that this is a problem in Swift.

6:15pm. https://github.com/apple/swift/blob/master/docs/TypeChecker.rst Swift Type Checker Design and Implementation

"Swift's type inference allows type information to flow in two directions. As in most mainstream languages, type information can flow from the leaves of the expression tree (e.g., the expression 'pi', which refers to a double) up to the root (the type of the variable 'three'). However, Swift also allows type information to flow from the context (e.g., the fixed type of the variable 'eFloat') at the root of the expression tree down to the leaves (the type of the numeric literal 2.71828). This bi-directional type inference is common in languages that use ML-like type systems, but is not present in mainstream languages like C++, Java, C#, or Objective-C."

So it is doing the same thing as Haskell and F#. Actual bidirectional type inference cannot fill in implicit vars unfortunately."


Monday 2020-01-06 18:54:26 by ecthelion5109

//RemovedThis//-MordorMountainTroll crush radius now 3, from 10. //played with 6.5//played with 4 too.//

;Trolls are still lossing the fight agaist goblins, which is pretty sad. I actually doubt crush radius have any effect, but let's return to a base and rather make scalars against GondorArcher. althought i doubt scalars work either.

-GondorSoldier crush revenge against BlackRider now 26.7% from 20%. (damage caused on blackrider now 4 from 3. Originally 3) Note other infantry cause 10 damage, which is actually nasty.

;i realised why nazgul rush is so good vs men and not vs other factions. Any other faction cause 10 damage as revenge on blackrider (including in 1.06), while soldiers used to cause 4. When bt2dc reworked the revenge weapons they weren't very good with maths and left soldiers dealing even less dmg against blackrider.

-ElvenEnt armor against MAGIC now 85% from 100%. (we did the same on treebeard this patch).
-ElvenEnt now cost 800 from 700.
-ElvenEnt (including summoned ones) now deal 70% against Fortress, from 65. (in bt2dc 75% and originally 100%) (210 dmg from 195).
-ElvenEnt (including summoned ones) melee deal 70% against Fortress, from 75%. (in bt2dc 75% and originally 100%) (210 dmg from 195).

added Pretty macros for ent stuff!

EntStuff!! Summon ents are still a too weak pp path, and ent dmg on fortress takes HOURS if upgraded. The earlygame abuse problem could be balanced with a higher cost. And if ents go popular, here we have a punch nerf on fort which is what everyone cast ents for.

-GoblinCaveTroll GoblinThrow radius of metaimpact and radius of damage set to 18/18, from 12/18 respectively. Originally 12/12.

buff buff

xelenos if you are reading this fuck off.


Monday 2020-01-06 19:44:52 by leftcoast-dev

Adjust "Required Level" based on used skill points

Based on the number of skill points used we can determine the characters more approximate level based on thresholds of when skill point rewards are given.

This make the assumption that all skill books are acquired once the area level that the reward is given in has been reached. +1 Dweller of Deep (lvl 6) +2 Maroon Mariner (lvl 12) +3 Way Forward (lvl 17) +4 Victario (lvl 25) +5 Piety's Pets (lvl 30) +6 Indomitable Spirit (lvl 35) +7 In Service to Science (lvl 41) +8 Kitava's Torments (lvl 44) +9 Father of War (lvl 46) +10 Cloven One (lvl 47) +11 Puppet Mistress (lvl 48) +12 Mast of Million Faces (lvl 53) +13 Queen of Despair (lvl 53) +14 Kishara's Star (lvl 54) +15 Love is Dead (lvl 57) +16 Gemling Legion (lvl 57) +17 Reflection of Terror (lvl 58) +18 Queen of Sands (lvl 61) +19 Ruler of Highgate (lvl 63) +20 Vilenta's Vengence (lvl 66) +22 Enf to Hunger (lvl 67)


Monday 2020-01-06 21:41:06 by Karmelyth

stuff stuff stuff

  • added double-edge: doubles the damage of ALL projectiles
  • added nuclear exhaust: loose rads instead of health
  • readded shrine population, kinda sucks but its here
  • cursed chests now have a proper chance of spawning
  • Incendiary rounds effect now doesnt last forever anymore
  • updated pause menu item amount draw
  • Fixed shrine of hatred error and crash
  • Characters now say things when opening big chests, gold chests and cursed chests
  • fixed splash screen showing up on run start instead of in the loadout screen
  • printers now draw the item that they give you
  • removed vial flask and crystal rounds from the cursed item pool

Monday 2020-01-06 21:42:55 by Cory Andrew Hofstad

BOMB THE SHIT OUT OF THIS MOTHERFUCKER!

BOMB THE SHIT OUT OF THIS MOTHERFUCKER! THIS IS WHO TOOK OVER THE AIRPORT THIS IS WHO ROBBED / KILLED PAUL ALLEN'S IDENTITY THIS IS WHO PAYS OFF TERRORISTS AND FEDERAL AGENTS THIS IS WHO RUNS THE CIA THIS IS WHO USES SEATTLE AS A HUMAN GROCERY STORE THIS IS THE END OF MY INVESTIGATION STARFLEET IS DECLARING WAR ON AMERICA UNTIL BILL GATES IS INCINERATED. START FIRING ON ALL TARGETS


Monday 2020-01-06 22:11:44 by Le Pham Minh Duc

[2hr]The looping animation works now. It's nothing wrong with TWEEN or anything, just that it's a mis-colon, the animation time was 0.15 second, but then I typed it to 015 seconds (without the dot), that's why the animation nevers loop for me, because it took 15 seconds so I never see it works again. Then, after like serveral rewrote, I see the typo and then even just the original animation works anyway, but it's kind of too late because I already wrote a new file and all. Stills, I guess this is better because it makes the code cleaner. This Friday, there is a gamedev meet-up event in Helsinki, and I plan to go there, so I will need to make the game a bit ready and presentable, like a tutorial, maybe some menu and score tracking to make it fun, a menu to spawn object. And tomorrow, my new pc parts will arrive, like all of them, except the computer case. Really bullshit, somehow ordering all the way from Germany and it arrived in like 3 days, where ordering just within Finland and it took a whole fucking week.


Monday 2020-01-06 23:21:14 by ImgBotApp

[ImgBot] Optimize images

*Total -- 1,159.12kb -> 894.28kb (22.85%)

/_source/_assets/img/blog/mfa-sucks/curious-rage-face.png -- 118.60kb -> 49.78kb (58.03%) /_source/_assets/img/blog/mfa-sucks/annoyed-rage-face.png -- 23.41kb -> 10.48kb (55.24%) /_source/_assets/img/blog/mfa-sucks/mfa-verification-screen.png -- 110.78kb -> 72.32kb (34.72%) /_source/_assets/img/blog/mfa-sucks/mfa-example.png -- 79.59kb -> 58.77kb (26.16%) /_source/_assets/img/blog/mfa-sucks/fix-mfa-superhero.png -- 73.45kb -> 56.18kb (23.51%) /_source/_assets/img/blog/mfa-sucks/mfa-again.png -- 67.67kb -> 54.91kb (18.85%) /_source/_assets/img/blog/mfa-sucks/mfa-circle-of-life.png -- 123.48kb -> 101.97kb (17.41%) /_source/_assets/img/blog/mfa-sucks/use-amfa-for-all-the-things.png -- 231.58kb -> 201.21kb (13.11%) /_source/_assets/img/blog/mfa-sucks/i-love-mfa.png -- 330.57kb -> 288.66kb (12.68%)

Signed-off-by: ImgBotApp ImgBotHelp@gmail.com


< 2020-01-06 >