Hacking This Game To Remove Jump Scares (Observation Duty)

Поделиться
HTML-код
  • Опубликовано: 24 ноя 2024

Комментарии • 113

  • @nathanbaggs
    @nathanbaggs  9 месяцев назад +2

    Want early access to new videos and some behind the scenes content? Consider becoming a channel member ruclips.net/channel/UCQvW_89l7f-hCMP1pzGm4xwjoin

  • @inzyster
    @inzyster 9 месяцев назад +167

    Who needs a dotfuscator license when you can just write code in Finnish, that’s genius

    • @SlendisFi_Universe
      @SlendisFi_Universe 8 месяцев назад

      Agreed. No one understands our beautifull weird language. Even ChatGPT and Google have hard times with the language

  • @ferna2294
    @ferna2294 9 месяцев назад +56

    2:10 Pro tip to Unity devs: You don´t need to encrypt the metadata when your code is written in Finnish.

    • @designator7402
      @designator7402 8 месяцев назад +19

      Security through obscurity was yesterday, security through Finnish is now.

    • @nullerrno
      @nullerrno 5 дней назад

      🇫🇮 Finlandia, Op.26

  • @ruojautuma1
    @ruojautuma1 9 месяцев назад +65

    As a Finnish software engineer I can say this is the first time in my life I have seen anyone write (in production) functions or even variable names in Finnish. Like I might sometimes as a joke write some temporary debug variables in Finnish out of frustration, but this is something else entirely.

    • @Tom3kkk
      @Tom3kkk 8 месяцев назад +6

      True obfuscation is being tri or more lingual and coding in all languages you know so the person who's trying to do stuff with your code cant just translate it all with 1 language :D

    • @bearzi
      @bearzi 7 месяцев назад +3

      Also they should use savonian dialect for extra obfuscation.
      Alao that code looks more scary than the game itself lol

    • @AlexeyFilippenkoPlummet
      @AlexeyFilippenkoPlummet 2 месяца назад +1

      My guess is they simply used visual scripting. I refuse to believe a programmer would ever willingly write code with any language other than English, but I can easily see how someone had been naming nodes and transitions with Finnish words on their graphs and then Unity translated it into the code automatically.

  • @lukusridley
    @lukusridley 9 месяцев назад +79

    Instead of the player being scared, the developer gets to be jumpscared by this video on his youtube feed and wondering if you're about to bully his code instead

  • @Hiandbye95
    @Hiandbye95 9 месяцев назад +92

    Did not think I'd be laughing at Finnish Spaghetti Code today, but was pleasantly surprised.

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад +16

      Made me laugh when I opened it up (:

  • @tiikoni8742
    @tiikoni8742 8 месяцев назад +13

    As Finnish person, I found this episode very amusing :-D Though all the typos and inconsistent capitalizations in code hurts me! Few translations if still unclear:
    OlkkarinJaMakkarinOviAnim = Living room and Bed room Door Anim
    makkariTaulu2 = Bed room Painting 2
    makkariRouva = Bed room Lady
    silmaMakkarissa = Eye in Bed room
    LisaaPahatMonsut = Add Bad Monsters

  • @QuintusCunctator
    @QuintusCunctator 8 месяцев назад +25

    "If we aren't past number 6969..."
    Thanks for both the reverse engineering and the dry humour, much appreciated!

  • @Draugo
    @Draugo 9 месяцев назад +44

    As a Finnish software architect this code hurts my soul.

    • @StatueSounds
      @StatueSounds 9 месяцев назад +17

      As a horror game. I feel like the code continues to do a good job.

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад +14

      Please tell me “in the eye sausage” isn’t correct…

    • @GameBacardi
      @GameBacardi 9 месяцев назад +19

      Makkara = sausage
      Makkari = bedroom

    • @GameBacardi
      @GameBacardi 9 месяцев назад

      :(

    • @sdsdsdssdsdxdd
      @sdsdsdssdsdxdd 9 месяцев назад +1

      Sanoppa muuta

  • @minirop
    @minirop 9 месяцев назад +78

    google translate give you "sausage" because the real word is "makkara". and "makkari" is the colloquial way to say "bedroom" (so probably not in its dictionary)

    • @nordgaren2358
      @nordgaren2358 9 месяцев назад +1

      minirop spotted

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад +36

      I was hoping someone would provide some clarification, was very sceptical “in the eye sausage” was correct

    • @nordgaren2358
      @nordgaren2358 9 месяцев назад +1

      @@nathanbaggs you've never heard that hit song by Survivor?

    • @Zooiest
      @Zooiest 9 месяцев назад +9

      Finnish slang is incredibly varied across regions of Finland (and even abroad), so I get why an AI-based (I think) translator software couldn't keep up with it

    • @nordgaren2358
      @nordgaren2358 9 месяцев назад +8

      @@Zooiest IDK if it's AI based. Googles translate service has been around for a long time. If they haven't changed it out to be "AI", then it's probably still not "AI"
      But who am I kidding, these companies will slap "AI" on everything, nowadays, because it's the thing to do.

  • @win8lb
    @win8lb 9 месяцев назад +15

    For unity games there are so many nice tools. So if someone would like to modify a game a more realistic way you could either:
    - Patch the Assembly-CSharp dll with dnspy which would work but be lost after every update.
    - Use Harmony to patch the methods or fields at runtime and using unity doorstop to inject itself at the game start.
    - Use HarmonyX with a mod loader like BepInEx or MelonLoader. (Would say this is the easiest way)
    This is pretty easy to do when the game is not obfuscated and using normal mono.
    When it's using IL2Cpp there is much more work needed but can also be done with HarmonyX and BepInEx or MelonLoader.
    Either way nice video as always ^^

  • @LukeAvedon
    @LukeAvedon 9 месяцев назад +34

    The fact that you used dotPeek and it was surprise Finnish IL language is hilarious.

  • @user-ui4ul8si6f
    @user-ui4ul8si6f 8 месяцев назад +4

    You know it's got to be a great game when a variable that stores a game object is named "timothyF**k" in the developer's native language.

  • @djdamagedome
    @djdamagedome 6 месяцев назад +2

    The beginning of Finlandia by Jean Sibelius was a nice touch

  • @odb7393
    @odb7393 9 месяцев назад +9

    I can’t decide if sausage table2 or that switch statement is more frightening 😳

  • @nox4000
    @nox4000 9 месяцев назад +24

    The code is more scary than the game

  • @ac15cr
    @ac15cr 9 месяцев назад +7

    Great job. It really seems like every one of your videos just gets better and better! Continue the amazing and interesting work!!

  • @WebCamCartmell
    @WebCamCartmell 9 месяцев назад +13

    aw man i was looking forward to in the eye sausage!
    Great video, man. Love it!

  • @TheZeiZei
    @TheZeiZei 9 месяцев назад +3

    Seeing that finnish code brings PTSD flashbacks from a legacy project I was working on some years ago

  • @pleasedontwatchthese9593
    @pleasedontwatchthese9593 8 месяцев назад

    I like your videos. I feel like they are great for programmers who are past beginner but want to get more intermittent to advance.

  • @DommoDommo
    @DommoDommo 9 месяцев назад

    I really enjoy this channel. Digging into the mind of some of these developers make me feel good that my game is also held together with rubber bands and chewing gum

  •  9 месяцев назад +1

    I like this idea, it's really relatable for me to be interested in a creepy game, but not liking jumpscares. Now I'm curious if you also had a bad experience with the Maze Game at some point (or another occurence of the exorcist jumpscare). That one kept haunting me throughout my teenage years. (Don't look it up if you don't know it yet!! You don't want to see that image, even outside of a jumpscare context!) I think it's the worst jumpscare of all (except maybe Escape the Ayuwoki).

    •  9 месяцев назад +1

      To be clear, with “worst jumpscare” I kind of meant “best jumpscare”, so it's excellent at it's job, but horrible for everyone who hates these things.

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад +2

      I am familiar with the Maze Game. There's no single traumatic event that made me not like horror games, I've just never liked them (:

  • @Impossible_Fishy
    @Impossible_Fishy 9 месяцев назад +2

    I’ve wanted to do this with phasmaphobia so badly lol, I get so scared but the game is so fun

  • @tommojphillips
    @tommojphillips 2 месяца назад

    “in the eye sausage" gets me every time haha.

    • @nathanbaggs
      @nathanbaggs  2 месяца назад +1

      Might want to wear goggles

  • @H3liosphan
    @H3liosphan 9 месяцев назад +2

    Hi, have you seen the new UEVR virtual reality injector, it hooks Unreal engine to make thousands of UE games VR compatible - has a variety of compatibility options and motion controller inputs. Would be amazing to see you make an in depth analysis of it as it follows similar game hacking techniques.

    • @praydog2
      @praydog2 9 месяцев назад +1

      I randomly clicked on this video in my feed and after laughing at the Finnish code, I was not expecting to see this comment (I am the UEVR dev). It would definitely be interesting to see an outsider's perspective on how I went about what I did in that project and what they think.
      There is an article on my site that goes into some really in-depth detail about how I achieved what I did, but this is again - still from my perspective.

  • @stevensteverson
    @stevensteverson 9 месяцев назад +1

    Nathan does a jumpscare by changing his white shirt to a Hawaiin shirt 😱

  • @kasperfb3317
    @kasperfb3317 8 месяцев назад

    Makkari is slang for Makuuhuone which translates to Bedroom.
    Nice job Translate!

  • @fabiomanzoni
    @fabiomanzoni 9 месяцев назад

    I would like to say that I enjoy your videos, but you could delivery more details of each project (maybe separated videos). I think you produce a lot in very compact videos. All very interesting, but I would love to see more how you struggle / implemented each alternative (like in the videos that you compare typescript, C++, C#, you just talked and never disclosed the full fun of building each raytracing in each platform).
    Thank you for sharing your work.

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад +1

      Thanks for the feedback! It’s always a balancing act to know how much technical detail to include vs telling an entertaining story

    • @fabiomanzoni
      @fabiomanzoni 9 месяцев назад

      🙂In my opinion, you should do both! your contents remember a lot of javidx9 or Bisqwit, but I think there is a lot of space for contents on hacking, patching, like you did with old games that looses compatibility with new OS. Thanks again, hope hearing more from you in the future.@@nathanbaggs

  • @Raelworld
    @Raelworld 9 месяцев назад

    The Observation games are genuinely genius. Observation Duty 5 in particular is the pinnacle, far far creepier than the likes of Resi Evil.

  • @AlooSenzu
    @AlooSenzu 9 месяцев назад +3

    Love your vides. Please please please consinder "hacking" The Sims 2 to be playable on modern hardware if possible. PCGamingWiki has some workarounds but nothing that actually works out to be fully usable in any meaningful way.

    • @TheNameIsSR
      @TheNameIsSR 9 месяцев назад

      I remember getting sims 2 to work on Windows 10 not that long ago, not sure if I'm misremembering now

    • @GameBacardi
      @GameBacardi 9 месяцев назад

      I'm almost sure you can run it on moderm PC. It just missing something.. ex. DirectX 9 or smth

  • @ignatikklokov
    @ignatikklokov 9 месяцев назад

    2:48 first look and im already scared, this is what horror games should look like

  • @Hiandbye95
    @Hiandbye95 9 месяцев назад +1

    Question: If I understood this correctly, then you wrote a program that would scan the whole (?) system memory for a specific sequence of values and then even write to that memory address. I thought there was protection in Windows against this sort of thing? Spying and writing to other processes' memory?

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад +4

      There not real protection for processes running at the same privilege level. You can go to Task Manager, right click any process and “Create dump file”, I just did the same thing in code

  • @jordanwaeles
    @jordanwaeles 9 месяцев назад

    I thought you were going to change the resources, so that the jumpscare corpse would be a cute teddy bear instead

  • @victrium1642
    @victrium1642 9 месяцев назад

    Point of order: jumpscares aren't horror, they're just lazy. Destroy this game

  • @GentleMannOfHats
    @GentleMannOfHats 9 месяцев назад

    Absolutely crazy! this was the kind of thing I always dreamed about doing. haha

  • @kunstkritik
    @kunstkritik 9 месяцев назад +1

    ok, if I want to make reverse engineering more difficult either use unhelpful variable names, or a non english language.
    This is not an exclusive or.
    spaghetti code also seems to help

  • @CPSPD
    @CPSPD 9 месяцев назад

    dude i love watching gab smolders play the observation duty games lmfao. would never expect you in a million years to RE this specific game! cool.

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад +1

      Glad you enjoyed it!

  • @Zooiest
    @Zooiest 9 месяцев назад +2

    How did all the Finnish programmers end up here? Suomi perkele :DDD

  • @VenomousCamel
    @VenomousCamel 9 месяцев назад +1

    TimeMovesOnAndSomethingHappens()

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад +2

      My favourite function

  • @GameBacardi
    @GameBacardi 9 месяцев назад +1

    kaynnistyykoItestaanUudestaan
    käynnistyykö Itestään Uudestaan
    Does it start, by itself, again.
    I'm Finnish, and also sorry of this finnish amator style :)

  • @Krisztian5HUN
    @Krisztian5HUN 9 месяцев назад

    Try to reverse engineer a Denuvo protected game. Thats the real fun

  • @xorxpert
    @xorxpert 28 дней назад

    I don’t know what is worst. fiinish, or obfuscation

  • @technicolourmyles
    @technicolourmyles 9 месяцев назад +1

    This was pretty cool, but I couldn't exactly figure out what you set out to do? Did you just automate the game, like creating a TAS for speedrunning that plays through the game for you? I thought initially your plan was to detect and remove/alert before jumpscares, but it seems like you were going for something completely different, only even after watching the entire video, I couldn't quite figure out what that was. Probably because I haven't played the game, so I don't exactly know what you're supposed to do in it.

    • @ericdanielski4802
      @ericdanielski4802 9 месяцев назад

      Nice information.

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад +3

      Thanks for the feedback, this is the problem when trying to make a story around a game people might not have played. It kind of ended up being a cross between automating the game and patching the memory to remove specific game events

    • @technicolourmyles
      @technicolourmyles 9 месяцев назад +1

      @@nathanbaggs it was still wicked cool! I love these videos showing how you can dig into the code of existing software and mess around with it. It's like the mature version of those Cheat Engine videos I would watch as a kid trying to get free Premium on Club Penguin, haha!
      I don't know if it's something you'd be interested in doing, but I would love a sort of overview on how one could get into learning this sort of stuff.

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад +1

      I have some stuff in the pipeline for that (:

  • @nolram
    @nolram 9 месяцев назад

    I’m curious why you used dotPeek instead of say dnSpy to both decompile and edit & recompile the assembly?

    • @nathanbaggs
      @nathanbaggs  9 месяцев назад

      dotPeek is just my go to for things like this and I wanted to mess around with low level windows process hacking

    • @nolram
      @nolram 9 месяцев назад +1

      @@nathanbaggs That's fair - I realised that that was your intention as I went further in the video. However, even for inspection I do recommmend having a look at dnSpy, I just find it much nicer to use than dotPeek - but that's just personal preference :)

  • @Gold7911
    @Gold7911 9 месяцев назад

    My feeling when I try to understand a open source Chinese project hahahaahahha. The greatest anti reverse engineering

  • @deavo74
    @deavo74 9 месяцев назад +3

    8:41 In the eye sausage… 🤣

  • @AlexeyFilippenkoPlummet
    @AlexeyFilippenkoPlummet 2 месяца назад

    I'm fairly certain that this game had been programmed by visual scripting. I refuse to believe there exists a programmer that would code a more or less serious project using primarily their native language words as names for variables and functions. But I can see how someone had been dropping nodes onto the screen and naming them with their native words which got automatically pushed into the code by Unity.

    • @nathanbaggs
      @nathanbaggs  2 месяца назад

      That’s an interesting hypothesis

  • @williamist
    @williamist 9 месяцев назад

    this is so me fr (i also hate horror games and am coder kinda)

  • @PhotonicNoodle
    @PhotonicNoodle 9 месяцев назад

    obfuscation through finnish

  • @fromthegamethrone
    @fromthegamethrone 9 месяцев назад

    I love these games

  • @TheHippyhopp
    @TheHippyhopp 8 месяцев назад

    How do you do this without risking a VAC ban on your account?

  • @skipperbentdk
    @skipperbentdk 8 месяцев назад

    Sausage lady.. it's maaaam!

  • @TheChemicalWorkshop
    @TheChemicalWorkshop 9 месяцев назад

    what the... i work for IT in germany and we code in english, like normal people

  • @george1717
    @george1717 9 месяцев назад +1

    Epic

  • @its_code
    @its_code 5 месяцев назад

    ❤❤❤😊

  • @HarrietBergstrom
    @HarrietBergstrom 8 месяцев назад

    "Promosm"

  • @ZennExile
    @ZennExile 9 месяцев назад

    How about just don't play horror games?

  • @ParodieHecker-mobile
    @ParodieHecker-mobile 9 месяцев назад +1

    6969 😏
    Nice video - as always :)