toyprotector's Friends
 
[Most Recent Entries] [Calendar View] [Friends View]

Below are the most recent 25 friends' journal entries.

    [ << Previous 25 ]
    Wednesday, May 8th, 2024
    nancygold
    1:31p
    lol, x86 has a separate opcode for applying bit-matrices
    Apparently they use it extensively to emulate non-x86 CPUs:
    https://youtu.be/19ae5Mq2lJE?t=741

    Current Mood: amused
    Tuesday, May 7th, 2024
    nancygold
    11:24p


    Current Mood: amused
    nancygold
    9:17p


    Current Mood: amused
    nancygold
    3:06p
    My Hero
    Man steals donation jar full of money meant for Gaza orphans from Bridgeview restaurant: VIDEO
    The restaurant owner said he is frustrated, adding that the jar probably had about $2,500 in it.
    https://abc7chicago.com/holy-buckets-bridgeview-il-donation-jar-stolen-surveillance-video/14396483/

    Current Mood: amused
    nancygold
    12:02a


    Current Mood: amused
    Sunday, May 5th, 2024
    nancygold
    9:30p
    Any sub O(n^2) soluton?
    Latest FizzBuzz:
    https://leetcode.com/problems/the-skyline-problem/

    can you find an O(n*log2(n)) solution?

    My O(n^2) solution (inner for loop gives the square)
      Input: [2 9 10] [3 7 15] [5 12 12] [15 20 10] [19 24 8]
      Output:
      Open!
      CurId MaxY -1
      for X,Y,Id,End Input.i{[@?1 ?0]}{[?0 ?2 ?3 0],[?1 ?2 ?3 1]}.j.sortBy(?0):
        less End:
          Open.Id = Y
          if MaxY < Y:
            [Id Y](:&CurId,&MaxY)
            push X,Y Output
          pass
        Open.del Id
        less Id><CurId: pass
        [-1 -1](:&CurId,&MaxY)
        less Open.n: | push X,0 Output; pass
        Open.l.maxf(?1)(:[&CurId &MaxY])
        push X,MaxY Output
    
      say Output.f
    





    Current Mood: amused
    nancygold
    1:41p
    Why my JRPG character misses several times in a row with 95% hit chance?


    Current Mood: amused
    nancygold
    1:06p
    New Speedrun Ideas
    Easy: kill all redguards in Morrowind
    Hard: kill all ugly NPCs in Morrowind



    Current Mood: amused
    nancygold
    12:24p
    People insist I'm a toxic person
    But I'm just telling truth.

    If you're an ugly freak, how come you got a nerve to give public speeches?


    nancygold
    2:57a
    Guy L. Steele
    Beside his work on Common Lisp and Scheme, he also published a hash function as part of JVM:
    // [1]: Guy L. Steele, Jr., Doug Lea, and Christine H. Flood. 2014.
    // Fast splittable pseudorandom number generators.
    uint32_t splitmix32(uint32_t index, uint32_t seed) {
      uint32_t z = (seed + index*0x9e3779b9);
      z = (z ^ (z >> 16)) * 0x85ebca6b;
      z = (z ^ (z >> 13)) * 0xc2b2ae35;
      return z ^ (z >> 16);
    }
    


    compared to usual hashes, it has two arguments: the index and the seed.
    The idea is to have a virtual O(1) addressable array of hashes corresponding to some seed hash.

    Beside hashtables, it is useful for a lot of stuff.
    The most basic use is distributing byte values over the entire 32bit or 64bit word range.
    I personally use it to provide random numbers for each world cell, without storing these numbers in memory.
    I also use it create random number of each world's update cycle.
    It is even more useful when you have to sync hash generation across several threads or agents.

    Obviously you can use any hash function to turn index into a hash, but this one is super fast (for video game use), yet gives good distributions:
    https://lemire.me/blog/2017/08/22/testing-non-cryptographic-random-number-generators-my-results/

    Current Mood: amused
    Saturday, May 4th, 2024
    nancygold
    8:12p


    Current Mood: amused
    Current Music: король и шут - ром
    Friday, May 3rd, 2024
    nancygold
    11:34p
    Finding Music on Youtube
    Somehow Youtube misses a ton of classic electronic music.
    Take for example Michael Hoenig, the dude is one of the krautrock pioneers.
    He also did Baldur's Gate soundtrack.
    Yet Youtube is missing large portion of his film scoring work, beside some X-Files music,
    https://www.youtube.com/watch?v=VcusLNAJSRg
    Even a crappy russian pirate site host more more of his music:
    http://musify.club/release/the-wraith-ost-duh-msheniya-saundtrek-score-1986-1777648
    http://musify.club/release/9-1-2-weeks-ost-unreleased-devyat-s-polovinoi-nedel-saundtrek-score-1986-818097

    check the arpegiator and final race tracks there.

    Current Mood: amused
    nancygold
    5:04p
    Comparing the most Western song with the most Russian one:

    Holst - Thaxted:
    https://www.youtube.com/watch?v=sjbHZ9ohEBU

    A clean tune, expressing the noble yet humble nature of the white imperialist, bringing civilization to the depraved aborigines.

    Tchaikovsky - Hymn of the Cherubim op. 41 No. 6:
    https://www.youtube.com/watch?v=Zb8qU56UB6U

    Blurry vodka infused howlings expressing the deep soulful world of the cannibal finno ugric tribesmen.

    And that isn't just Tchaikovsky. Russian music is either the clown commie shit for workers and peasants (i.e. Sviridov), or these church howlings. If the Russian music wont turn you into a russophobe, then you're a honorary snownigger. I'm personally not a fan of rap either, but let's be honest, africans have the sense of rhythm. Can't say that about Russians.




    Current Mood: contemplative
    Current Music: https://www.youtube.com/watch?v=P_CfUUeNuY8
    nancygold
    2:25p
    How to evade conscription
    "Лица с ВИЧ-инфекцией признаются «негодными к военной службе с исключением с воинского учета». Человеку, живущему с ВИЧ, будет отказано в прохождении срочной службы, призыве на сборы, а также в поступлении в военные учебные заведения и суворовское училище."
    https://www.pozvolna.ru/2022/09/призовут-ли-в-армию-с-вич-отвечает-юр/

    Doesn't work in Ukraine though:
    https://www.dw.com/ru/kak-sluzat-v-ukrainskoj-armii-soldaty-s-vicstatusom/a-67418930
    в украинскую армию стали призывать и тех граждан, которые по состоянию здоровья в мирное время признавались непригодными к военной службе. Среди них - и ВИЧ-инфицированные.

    I heard Ukrainians eliminate crippled and problematic people under the pretense of "defending motherland"

    Current Mood: amused
    Current Music: Simon Lambros - Elegy: Moderato
    nancygold
    1:26p
    Teardown voxel physics implementation
    https://youtu.be/tZP7vQKqrl8?t=3505

    TLDR: the game has inertia boxes for each chunk, whose orientation is related to the inertia tensor, which expresses how resistant is the chunk to the rotational acceleration in certain direction. These recomputed every time a chunk is modified, apparently by summing over the gradient of the chunk voxel's masses.


    Surprisingly they avoid the classic octree + BVH approach.
    The octree is used only for the very first few LODs.
    But they do switch LODs after certain distance threshold.
    I.e. they achieve the similar speed result as with octree and BVH,
    but without the more involved algorithms.



    Current Mood: amused
    Thursday, May 2nd, 2024
    nancygold
    12:02p
    nancygold
    11:22a
    Dating helper AI rates Russian invaders looks
    https://kohlchan.net/int/res/23330085.html



    Current Mood: amused
    Wednesday, May 1st, 2024
    nancygold
    12:46p
    nancygold
    1:12a
    Asked Dall-e to Draw Demonic Rooster...


    Current Mood: amused
    Tuesday, April 30th, 2024
    nancygold
    2:11p
    Lets not forget the transvestites
    These are the psychopathic perverts, pedophiles and rapists we all know from the news.
    Transvestites are even more evil and dangerous than your usual homosexuals.
    And they too hate true transsexuals with passion:
    https://en.wikipedia.org/wiki/Virginia_Prince
    >Prince's idea of a "true transvestite"[21] was clearly distinguished from both the homosexual and the transsexual, claiming that true transvestites are "exclusively heterosexual... The transvestite values his male organs, enjoys using them and does not desire them removed."[21]
    >Controversy and criticism has arisen based on Prince's support for conventional societal norms
    >attempts to exclude transsexuals, homosexuals, or fetishists from her normalization efforts of the practice of transvestism have also drawn much criticism.[10]


    https://www.crossdreamers.com/2011/03/from-transgenderist-to-transgender-on.html
    >The FPE was limited to married heterosexual men, and excluded homosexual men, male-to-female transsexuals, and XX women.
    >Virginia Prince advised against unnecessary surgery, arguing that these conditions are more a question about cultural gender than biological sex.
    >Prince did say that there is one group that can benefit from sex reassignment surgery, namely sexually and socially inadequate asexual boys:
    >"Since we have a vertically stratified society, with men above and women below, less is expected of women. Thus surgically reassigning a person like this to the sexual and genderal status of female and woman greatly reduces the disparity between expectation and performance and would probably render the individual a happier and more productive citizen." ("Transsexuals and Pseudotranssexuals", Archives of Sexual Behavior, vol. 7 no. 4 1978)



    So if a homosexual is your Ernst Röhm, a transvestite would be Joseph Goebbels, who may appear a respectable conservative man, but can murder his wife and the entire family of white children for some fetish dream. I had many such perverts as clients. Compared to homosexuals, these men are mostly tops, but want me to dress them and do makeup. Worst of the worst.



    Current Mood: contemplative
    Current Music: Darkways - Fire
    nancygold
    11:17a
    The longer I transition, the more I support genocide of all faggots
    Literally every single gay man, including femboys, I meet wants transgirls to detransition, and insists that one can be a girl without HRT.

    You wont find bigger transphobes than homosexuals.

    So truscum ts acceptance should include total gay genocide somewhere along the way.




    Current Mood: contemplative
    Current Music: Christopher Young - Hellraiser OST
    Monday, April 29th, 2024
    nancygold
    3:55p
    How Ukrainian Army Works
    https://tass.com/defense/1456129

    Ukrainian POWs open up about ruthless anti-retreat squads
    According to one of them, a platoon, which refused to fight, left, and no one ever saw them again

    MOSCOW, May 26. /TASS/. Ukrainian soldiers, who surrendered to Russian forces on May 25, revealed that the Kiev regime had barrier troops (better known as anti-retreat squads) that threatened anyone with summary execution for attempting to retreat or for low morale.

    "Our commander told us, when were on the battlefield: if you start retreating, we will shoot you, also behind you are barrier troops, which will be shooting those running away" Dmitry Tarasyuk from the 95th assault brigade of Ukraine’s Armed Forces said in a video, posted by Russia’s Defense Ministry on Thursday.

    Tarasyuk also revealed that a platoon, which refused to fight, left. "No one ever saw them again," he said.

    All soldiers, who surrendered during the fighting near Krasny Liman on May 25, gave testimony about these so-called barrier troops that punish those who do not want to fight, the Defense Ministry said.


    Current Mood: amused
    nancygold
    12:40p
    There is no beauty in ugliness
    If we cull ugly animals, why can't we cull the ugly bald men?
    Just a few generations of bottlenecking, and every human gets good looks.
    There is absolutely no good reason for degenerate freaks to exist.
    They lower humanity's morals and make everyone depressed.
    The planet is too low on resources to afford carrying ugliness.
    And ugly people suffer living, in addition to poisoning humanity.
    It is inhumane to torture them and produce even more ugliness.

    Current Mood: contemplative
    Current Music: Baldur's Gate 2 OST - The Vulgar Monkey Tavern
    nancygold
    12:12a
    Spell of Mastery Progress
    Still rewriting the engine.
    Earlier I've converted everything to use ECS.
    That opened a venue to fixing the general architecture.
    At the moment I'm decoupling video and audio parts from the entities.
    With ECS both are just the systems sampling entities and producing output.
    Before ECS they were highly coupled with the entity actions.
    For example, animation code had to tell when the attack animation hits.
    That led to horrible bugs and general inflexibility.
    I.e. it was impossible to break any actions.
    And animation code had to be run even for the off screen entities.
    Because otherwise these entities couldn't act.

    Beside uniformity, as an added bonus, the code became faster.
    Because only the entities really needing that get processed.
    Moreover, systems inside the same phase could run on different CPUs.
    As long as they dont write into each other systems.

    Compared to OOP, ECS guides you towards robust architectural choices.

    Of course my success with ECS is due to first re-introducing the complete OOP.
    That way I could have gradually transitioned my messy code to proper ECS.
    Untangling it component by component.

    I haven't implemented method phase yet, so it involves manually calling the systems:
    update_systems Me =
      update_custom_systems Me
      for U each(add_cover){unit_}:  add_cover U
      for U each(add_shadow){unit_}: add_shadow U
      for U each(remove_sat){unit_}: remove_sat U
      for U each(place_sat){unit_}:  place_sat U
      for U each(suffers){unit_}:   upd_suffers U
      for U each(motilize){unit_}:  motilize U
      for U each(active){unit_}:    U.do_activation
      for U each(needs_globals){unit_}: U.add_global_acts
      for U each(anm1){unit_}:      U.update_anim
      for U each(made_step){unit_}: made_step U
      for U each(anm_float){unit_}: U.reset_visl
      for U each(animate){unit_}:   U.do_animate
      for U each(randidle){unit_}:  U.rand_anim_step
      for U each(goal){unit_}:      U.break_idle
      for U each(ordered){unit_}:   U.break_idle
      for U each(members_){unit_}:  update_members U
      for U each(fade_inc){unit_}:  U.update_fade
      for U each(acting){unit_}:    update_action U
      for U each(pursued){unit_}:   update_pursued U
      for U each(actpost){unit_}:   update_actpost U
      for U each(enchng){unit_}:    update_enchng U
      for U each(fall){unit_}:      update_fall U
      for U each(sqid){unit_}:      update_sqid U
      for U each(host){unit_}:      update_hosted U
    


    Ugly but already much cleaner than when all this nonsense was buried and coupled in a spaghetti mess.

    Note that each system there converts the table to the `unit` interface. These are similar to Java or C# interfaces, in that they don't have data, only methods, allowing me to work with an entity like with an OOP object, abstracting away the tables behind it. So I don't really lose any OOP benefits, and due to Symta being bytecode language, hashtable performance loss is negligible.

    Further more, by allocating entity ids inside specific ranges it is possible to have subtypes of entities with non-hash table. For example, if ones decides to implement terrain cells as entities, one can reserve an id range for them, so pathfinder lookup will be fast enough. In fact, I did that for my terrain cells even before ECS, because a few cells needed to have expensive metadata. So using a monolithic struct for all cells was just not an option. Finally I have a solid framework instead of disjoint mess of tables.

    I think some people use ECS outside of video games or graphics. I myself use it for widgets in my voxel editor. And you can easily replace ReactJS with ECS. In general you can use ECS everywhere you have a SQL database or need a Prolog style processing. In fact, some components and systems could remain inside the database, or even across multiple servers. But the system `phases` will be different for each use case.

    For example, you can represent each row in a text file as an entity, and every character inside of it as another entity. Then each row number could be made into a separate component, and same with column number. Now you can implement programs like grep as systems over entities, and even run them in parallel in the same phase on different rows. And different phases can be seen as separate programs connected through pipes. The components can also be seen as messages, and system can consume them by clearing the table after processing everything.
    Console.println = "hello world"
    sets component println, which could be printed asynchronously. The paradigm is kinda profound.


    The weak point of ECS is that everything is inherently async. So if you want to do have everything in sync, it will be really slow, because ECS have to go through all the phases, before performing the next step. That is okay for rendering a web page, but not okay for say running a CPU emulator.

    Current Mood: amused
    Sunday, April 28th, 2024
    nancygold
    9:43p
    [ << Previous 25 ]
About LJ.Rossia.org