Igniting Creativity for a (Hacking) Game - Game Devlog #2

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

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

  • @mina86
    @mina86 4 года назад +112

    Online hacking game? So like Fallout 76 then.

    • @LiveOverflow
      @LiveOverflow  4 года назад +40

      Lol

    • @wilfridtaylor
      @wilfridtaylor 4 года назад +41

      Nah he is only 1 guy working on it. He doesn't have enough time to add that many bugs.

    • @ItzZed
      @ItzZed 4 года назад +2

      @mina86 Fallout 76... that a good representation of a hacking game.

    • @threeMetreJim
      @threeMetreJim 4 года назад

      Any new online game (apart from casinos - they are really good at security). Most new software has bugs, the first time round.

    • @threeMetreJim
      @threeMetreJim 4 года назад

      @@creepysmilingcarl9742 Does that mean you could send a remote command, and really confuse other players? That would be much fun. (damn, did anyone else see that??!)

  • @Nothy
    @Nothy 4 года назад +2

    this is actually such a nice change from usual game devlogs, and it feels far more inspiring than those usual devlogs

  • @123goforme8
    @123goforme8 4 года назад +6

    15:06 It really depends on what scripted events you want to make for an NPC. Like for your bunny a quick and easy solution would be to attach a second Collider, one that only activates if the player is near. So on one hand you would have one for the bunny and the terrain and on the other you would have the one for the bunny and the player, which obviously would have a much higer range of collision detection. This way the bunny can move around following any waypoint(s) that you give it and either follows a predetermined path or uses a path solving alghoritm to get to the final waypoint. As soon as the bunny is out of the range of the player, it is about similar as in your example the state of collision deactivates and the bunny movement stops and idle mode starts. When the player get's back in the area of the collider the bunny starts moving again.
    A nother solution would be to also use raycasting and that way the bunny could also stop, if like the player hid behind a tree, that would block the "view" for the bunny to see him, or simply something would come up between the bunny and the player (like the bunny goes further and needs to go round a huge boulder or say bush). However raycasting is expesive operation and you do not want to abuse it, you also want to cut down on the range so like the bunny wouldn't try to raycast for the player if he was on the other side of the map. That's why usually you still you a collider and then add in some raycasting features.
    Though like said it would really depend on what events you want for an NPC, mostly you would use triggers, colliders and bit of raycasting to have them react to something.

  • @idiomcoder9402
    @idiomcoder9402 4 года назад +1

    you seem to encapsulate all my interests constantly. I'm surprised with your content I don't think I've ever found someone this good.

  • @cjhackerz
    @cjhackerz 4 года назад +24

    Many people in tech industry who are creative have tried game dev or 3d modeling stuff 🙂
    Edit: I am gonna definitely try this out

    • @evansjahja711
      @evansjahja711 4 года назад +2

      I've tried 3d stuffs. Modelling is not hard. Texturing is okay, with the right tools. rigging is tough. Animation is 😐

    • @cjhackerz
      @cjhackerz 4 года назад +1

      @@evansjahja711 yups manual animation is hard without motion capture.

  • @omri9325
    @omri9325 4 года назад +6

    You can force a player to find the flag in an offline game by computing, like taking information they find using hacking tools and compute an optimal way with some tools.
    Some example that come to my mind is measuring the position and momentum with some tools.
    Or maybe some riddles that you can find hints for in some metadata associated with objects.

  • @the0neskater
    @the0neskater 4 года назад +2

    Path of Exile shout-out nice haha! Big fan of your videos, especially this new series on game development. I am a senior engineer on Path of Exile and your videos provide great inspiration for my work and hobby projects, keep on making great content! PS: As
    KuroNeko Felis commented below, use IL2CPP in Unity.

    • @LiveOverflow
      @LiveOverflow  4 года назад +1

      holy shit NO WAY!?
      I'm sure PoE also has to deal with cheaters - I would love to hear some (technical) war stories. That would be such a great video. Do you mind asking internally if there is anything that is sharable?
      RE: IL2CPP, wait for the next two episodes, it's going there. But spoiler alert: not effective :P

  • @danieltr94
    @danieltr94 4 года назад +1

    Love the idea man! CTF inside an actual video game. Maybe create the flag with individual letters, have a server side algorithm to make it different per person. Helps prevent people reverse engineering the flags and sharing the answers online.

  • @MichalGerwatowski
    @MichalGerwatowski 4 года назад +46

    I just realized that the bunny from the game, could be reference to the bunny from your first episodes of binary patching

    • @MichalGerwatowski
      @MichalGerwatowski 4 года назад +9

      I know its from Matrix, but think about it, there was a rabbit in LiveOverflow's videos, soo maybe some flag hidden in this rabbit? Something like FLAG{D0nt_be_4_scr1pt_k1dd1e}

    • @Brickkzz
      @Brickkzz 4 года назад

      Ok

    • @toboterxp8155
      @toboterxp8155 4 года назад +5

      @@MichalGerwatowski It's originally from Alice in Wonderland. The Matrix just referenced it as well.

    • @MichalGerwatowski
      @MichalGerwatowski 4 года назад

      @@toboterxp8155 I knoow, i meant, it would be cool to reference to an older videos right?

    • @toboterxp8155
      @toboterxp8155 4 года назад

      @@MichalGerwatowski Trur

  • @honzapat
    @honzapat 4 года назад +26

    0:52 missed squarespace ad opurtunity

  • @KyuVulpes
    @KyuVulpes 4 года назад +21

    Hey LiveOverflow, there is the piece of tech in Unity called IL2CPP, and yes, it does what it sounds. It compiles your C# code to IL like normal, but then it turns around and uses LLVM to convert IL into C++, then from there compiles C++ into a native binary. And let me tell you, IL2CPP changes up the project structure quite a bit. I haven't found tools that would be good at decompiling a project made using IL2CPP back into a usable Unity project since a lot, if not all, of the original C# code has been lost in the compiled version. Eco is a game that uses IL2CPP for the client and a .NET program as the server to prevent client-side hacking from what I can tell. Here is the Unity doc page on it, I think that would of solved the issue of players using dnSpy to decompile the game: docs.unity3d.com/Manual/IL2CPP.html
    Edit: Here is a snip-it from that doc, "Some of the uses for IL2CPP include increasing the performance, security, and platform compatibility of your Unity projects." So even Unity knows that one of the reasons to use IL2CPP is to increase security of the game, which would include removing tools such as dnSpy from the belts of decompilers.

    • @Chadderbox
      @Chadderbox 4 года назад

      I can't get it to compile some stuff though, for instance SteamVR just dies when used in IL2CPP.

    • @lachee3055
      @lachee3055 4 года назад +2

      @@Chadderbox because its building a static binary, everything needs to be Ahead Of Time compiled (AOT). Normally, Unity will just compile to IL, which is then Just In Time compiled (JIT) by the CLR. However, the C++ project contains everything required built in and does not do any JIT. As a result, many C# library that make heavy use of Reflection.Emit or JIT features will not work. Newtonsoft.JSON is a big example.

    • @anonymoususer6801
      @anonymoususer6801 4 года назад

      AOT compilation has also advantages.

    • @KyuVulpes
      @KyuVulpes 4 года назад

      @@anonymoususer6801 Do you mean JIT? In the case of IL2CPP, it is considered AOT, with the exception being iOS devices where Unity has to use an AOT .NET Compiler instead of a JIT Compiler.

    • @LiveOverflow
      @LiveOverflow  4 года назад +3

      As Edwin already said, used IL2CPP for Maze. So wait for the next two videos to hear how effective that is :P

  • @fsunt
    @fsunt 4 года назад +1

    9:30 Looks like a good doggo there left under

  • @Am65446
    @Am65446 4 года назад +13

    To write hints,Use pebbles and put it on the walls,that way it cannot be reverse engineered.

  • @RoskGamer
    @RoskGamer 4 года назад +1

    A better way to do chapter 11 is with unity's path finding and inverse kinematics. For the event I would've created a object that the rabbit moved towards, when you enter a certain radius (or saw the object with raycasting) the object updates the "next object to move towards" of the rabbit. In this way each object is responsible for sending it to the next, therefore not needing to hardcode it and allowing to easily scale the path

  • @agowa338
    @agowa338 4 года назад +9

    The magic spell part reminds me about: "system call create luminous object" ;-)

    • @Bright2Shine
      @Bright2Shine 4 года назад

      HA! good meme

    • @oblivion_2852
      @oblivion_2852 4 года назад +2

      System call cannibalize 200 people into sword

  • @SerabiiBot
    @SerabiiBot 4 года назад +3

    Great video! It's always interesting to see how people approach game dev and improve while they learn! I like how you showed that you often went back and did major changes to things like the island, it makes it a lot more comforting to know that other people often go through those times in development where they feel their vision has changed.
    I do have a slight gripe with the Alternative Stories bit in your log. There's nothing wrong with changing the story of a game in progress if you feel it might be more interesting or fit the gameplay better, but the way you describe changing the gender of the PC just sounds slimy and condescending. It's pretty telling that you consider having a female PC as a fun surprising novelty to "own the white male nerds even though I am one" as opposed to just another change that can occur in the development journey. 😒 We gals aren't a cheap twist, we're a normal part of life just like guys. (Also, bringing up and misrepresenting Gamergate in 2020? Talk about beating a dead slandered horse!)
    It's just a small gripe, but it's there regardless. I apologize if I'm taking a joke too seriously. 😅 Looking forward to future installments in this Dev journey!

    • @aarondcmedia9585
      @aarondcmedia9585 4 года назад

      I searched comments for "gate" after experiencing a wtf moment mid-video and agree with everything you wrote.

  • @CorneliusCornbread
    @CorneliusCornbread 4 года назад

    Just so you know, Unity has the ability to compile games using IL2CPP, turning your C# code into compiled C++ code. This does a pretty good job at obfuscating your code, but can also lead to more issues like simple things being lost due to compiler optimizations. There are also obfuscators on the asset store that make the source impossible to read, though for your purposes that's probably not what you want.
    TL;DR, use IL2CPP when possible to prevent source docompiles

  • @linhorse4405
    @linhorse4405 4 года назад

    while rabbit is absolutely an amazing idea!

  • @evansjahja711
    @evansjahja711 4 года назад +1

    I think it's very hard to limit players from cheating 'teleportation' in a local game. In order to create more challenging tasks, turn it into server-client (unity can do this out of the box) where server would validate user movements, preventing teleports, flying, etc.
    On competition, you could make the server source code (or binary) available to players, but they are not allowed to manipulate it. And they'd have to find checks that are implemented poorly and exploit them

    • @DanKaschel
      @DanKaschel 4 года назад

      Did you watch the video?

  • @gabrielraphaelgarciamontoy1269
    @gabrielraphaelgarciamontoy1269 4 года назад

    You inspired me to try to make a unity game! Gonna try to use free assets though since I’m cheap 😂 your game looks great, can’t wait for the next part!

  • @lachee3055
    @lachee3055 4 года назад +1

    Please note that some of the Unity Decompilers are actually spyware. The most prevalent paid "Project Compiler" has a dubious pass and includes spyware to "prevent piracy".

  • @r1pfake521
    @r1pfake521 4 года назад

    Machst du in Zukunft noch mehr solche Spiele bzw. gibt es ne Chance, dass du eins mit einer Community machst? Ich hab C# / Unity Erfahrung und würde mich für sowas interessieren.

  • @motbus3
    @motbus3 4 года назад

    the dog seems to enjoy your content too

  • @threeMetreJim
    @threeMetreJim 4 года назад

    Make gravity less, so you float down, harder to check for cheating on the server if calculations are done locally (and it's one change for a global effect) - just scan for a value of between 9 and 10 maybe (gravity constant on earth is 9.81m/s squared). You can also fake buoyancy underwater by making gravity ever so slightly negative, until you reach the surface (can also add in effects of any extra weight your character my be holding on to). Also sometimes there is no need for a hole hack, get caught on the edge, and as falling and getting 'stuck' on the 'slope' of the hole, keep jumping (sometimes this works).

  • @PiotrekR-aka-Szpadel
    @PiotrekR-aka-Szpadel 4 года назад +10

    Just and idea on how to solve flags problem:
    just split letters to separate objects and then place them independently
    in assets you will see separate letters, and maybe do not place them by code, but in unity designer (disassembling code it just too easy)

    • @albingrahn5576
      @albingrahn5576 4 года назад

      he said in the video that there are tools for windows that reverse engineer projects to the point where they let you open the project in the unity editor. this wouldn't work

  • @MrGentlemanism
    @MrGentlemanism 3 года назад

    Back in 2006/2007 there were a lot of hackers on the MMO maplestory. Great times. Wish I had the knowledge then that I have now!

  • @thomas3754
    @thomas3754 4 года назад

    For the scripted npc you could make a collider sphere that follows the rabbit. There are collider enter and leave events which you can basically use to control the rabbit movement

    • @LiveOverflow
      @LiveOverflow  4 года назад

      I have used colliders to trigger when the bunny starts running

  • @room204studios
    @room204studios 4 года назад

    This is super creative and cool

  • @shakibdewan7441
    @shakibdewan7441 4 года назад

    How did you achieve those graphics? That's beautifu. Could you do a tutorial?

  • @paxon57
    @paxon57 4 года назад

    Just noticed
    Kurzgesagt calendar

  • @hayline
    @hayline 4 года назад

    very tnks my frend you are the best
    very tnks for your help

  • @anonymoususer6801
    @anonymoususer6801 4 года назад

    dnSpy is so great i can't put it in to words.

  • @Zhung36
    @Zhung36 4 года назад +2

    9:29 look at the cute dog in the corner!

  • @dfragglet
    @dfragglet 4 года назад

    The magic and hacking theme sounds a bit like the magic 2.0 series of books. Wizards are just hackers who can manipulate the world through editing a text file.

  • @itouchgrass713
    @itouchgrass713 2 года назад

    We need gameplay videos of Following the white rabbit.

  • @r1pfake521
    @r1pfake521 4 года назад

    There is a easy way to make things like cheat engine more annoying im not sure how this process is called, but instead of storing int or float you create a wrapper class/struct and everytime you update the value, the setter will generate two random values which you have to add to get the real number, for example let's say you store the value 42, then the setter would randomly pick the value 40 and 2 and the store them in fields, the getter would add these two values to return the real value. This way you can't search the number 42 in the cheat tools, because the value 42 isn't stored anywhere in memory and since the two internal valus are random you will always see different numbers. Of course this is only a small annoying thing, because you could just modify the decompiled source code to remove the random part and for example store the real value and zero in these fields instead of the random stuff etc.

  • @GrzybDev
    @GrzybDev 4 года назад +3

    Hey LiveOverflow! In order to protect code for Unity game you can try using Il2Cpp (you can find that in player settings). It'll do some magic to translate c# code to CPP as name sugest. Look it up :)

    • @LiveOverflow
      @LiveOverflow  4 года назад +4

      Wait for next video ;)

    • @Chadderbox
      @Chadderbox 4 года назад

      This is a great idea! I have been having problems with people hacking my scoreboards, but this seems to fix it very well. Can't use dnspy anymore.

    • @ITR
      @ITR 4 года назад +1

      melonloader already gets around this

  • @anispinner
    @anispinner 4 года назад

    You actually can use C++ in Unity. Just write your lib, and attach it as a plug-in. As Unity itself is written in cpp, there's no issues with this approach.

  • @hamzahajjaj4106
    @hamzahajjaj4106 4 года назад

    If you want some feedback, the videos while sitting are better. Thank you for the good content

  • @r1pfake521
    @r1pfake521 4 года назад

    Many people here post about IL2CPP Im sorry to disappoint you, but that doesn't solve anything, it can still be decompiled. Yes it's a bit harder than decompiling C#, but there are still enough tools out there to make it easy enough. The main point of IL2CPP is because some plattforms require AOT for example IOS and to improve performance (in some cases, mostly mobile). Don't use IL2CPP to "protect" your code, your code has to run on the machine, no matter what tool or language you use, there is always a way to read the code, the only way to solve this is by implementing online connection and let the server handle the "secret" code.
    Maybe for a hacking game you could make your own little script language (google game byte code pattern) for the important stuff, like puzzles. Obviously it can still be decompiled, but since it's your own language, there are no tools, so it should be annoying enough that people will no bother with it.

  • @WhiterockFTP
    @WhiterockFTP 4 года назад

    maybe u could encrypt the flag texture with AES and use the player coordinates rounded to the nearest integer or something similar as the key to decrypt it - so would only see it if you‘re in the right spot, i.e. either by teleportation hacking or disbaling fall damage. i dunno just an idea to make static analysis more difficult

  • @Veso266
    @Veso266 4 года назад

    BTW: can you open source your 2 games? I mean if you wanted to, is it even possible since you bought so many assets?

    • @Reelix
      @Reelix 4 года назад

      It depends on the licensing of the purchased assets.

  • @spyofdarknezz
    @spyofdarknezz 3 года назад

    The link for downloading the game sadly isn't working, is it only on my pc? :)

  • @therokdabatherokdaba9269
    @therokdabatherokdaba9269 4 года назад +7

    You forgot chapter 8 haha

  • @MintyLily
    @MintyLily 4 года назад

    is the game still available to download, it seems that the link is no longer in use

  • @theaifam5
    @theaifam5 4 года назад

    What about Unity's IL2CPP?
    Sad that does not support Linux & MacOS, then I am not gonna touch it.

  • @thomas3754
    @thomas3754 4 года назад

    Unity should have path finding components as far as I know.
    I think you have to bake first where the npc can move and then you can let it go anywhere

    • @DanKaschel
      @DanKaschel 4 года назад

      Using pathfinding is usually too unreliable for scripted sequences because it is too likely that positioning or asset changes will break the sequence.
      In addition, it doesn't provide the level of customizability that you usually want (e.g. stopping at a specific place to force a specific view). That's especially true when the sequence has multiple triggers that advance an internal state, so that a failure to trigger could result in an invalid state.

  • @Donder1337
    @Donder1337 4 года назад

    Damn, now i want to do it too xD

  • @elgicefish
    @elgicefish 3 года назад

    how can i download the games, the links seem to be down?

  • @chacelow2438
    @chacelow2438 4 года назад

    Can you please include your logo in your video thumbnail.
    I skipped over the Game Dev Log because I thought it was a random algorithm suggestion and not one of my favorite creators videos.

    • @LiveOverflow
      @LiveOverflow  4 года назад

      isn't my handwriting recognisable at this point? :D

  • @alexfrank1831
    @alexfrank1831 4 года назад

    Respect!

  • @BataFPS
    @BataFPS 4 года назад

    I am trying to reverse engineer a game to create a hack for it, what do you suggest or where should i start ? its MMORPG

  • @spicybaguette7706
    @spicybaguette7706 4 года назад

    12:50 and also your old intro?

  • @josedejesuslopezdiaz
    @josedejesuslopezdiaz 4 года назад

    Nice plant

  • @gabenizhere738
    @gabenizhere738 4 года назад

    Small spaceship? More like small DeLorean :)

  • @kandy1249
    @kandy1249 4 года назад

    Cool.

  • @maSterVqne
    @maSterVqne 4 года назад

    North Gang here send by Micheal REEEEEEEEEEEEves
    CTFs and security nerds goes brrrrr

  • @namra98
    @namra98 3 года назад

    Download link not working

  • @TheWafflesalsa
    @TheWafflesalsa 4 года назад

    How is there enough time in the day for you to be doing all this!?

  • @jasondads9509
    @jasondads9509 4 года назад +1

    doggo!

  • @sweet_potato9102
    @sweet_potato9102 4 года назад

    What I've learned from this video is that LiveOverflow likes black hoodies. :D
    I've explained the plot for you guys, no need to thank me ...

  • @Maxjoker98
    @Maxjoker98 4 года назад

    You can't really run most games in a VM, because they require hardware accelerated 3D graphics.

    • @ieocin
      @ieocin 4 года назад

      not if you use gpu passthrough

  • @hblaub
    @hblaub 4 года назад

    Maybe use www.preemptive.com/products/dotfuscator/overview or something like that? Or just name your variables from 'a' to 'z'...

  • @Gess1t
    @Gess1t 4 года назад +1

    i heard unity's particle system can solve every one of you problem in life

  • @hannes_kuehl
    @hannes_kuehl 4 года назад +1

    As always a very high quality video, but for my taste a bit too much advertising

    • @LiveOverflow
      @LiveOverflow  4 года назад +7

      What kind of advertisement? I would recommend AdBlock then it’s ads free ;)

    • @Daggenthal
      @Daggenthal 4 года назад

      @@LiveOverflow I'd recommend uBlock Origin instead, as you can just right-click and pick out elements to be blocked (The "Please disable your AdBlocker" elements, mainly, but can do it to anything you'd like.). It also doesn't accept money to allow advertisements to get past it, and has a lower memory foothold as far as I'm aware!

  • @nor24o2010
    @nor24o2010 4 года назад

    The download is broken

  • @omerfarukbykl6097
    @omerfarukbykl6097 4 года назад +1

    7:53 wrong subtitle
    "hile" - "while"

  • @kyliestaraway2492
    @kyliestaraway2492 4 года назад

    There wherent any real rabbit's in this video 😔

  • @AnakiiD
    @AnakiiD 4 года назад

    Michael Cera computer hacker

  • @dheerajkarki89
    @dheerajkarki89 4 года назад

    Hey sir have u ever try to decompile android app mt manager thats a great time pass for u
    Please like folks if u agree with me.

  • @NareshKumar-xy4to
    @NareshKumar-xy4to 4 года назад +1

    i don't have pc or laptop 😣
    but have a smart phone

  • @brianbostick3715
    @brianbostick3715 4 года назад +1

    Hi

  • @Thiago1337
    @Thiago1337 4 года назад

    Don't read this

  • @dascandy
    @dascandy Год назад

    @12:50 There's also WHTE_RBT.OBJ in Jurassic Park.

  • @gabrielraphaelgarciamontoy1269
    @gabrielraphaelgarciamontoy1269 4 года назад +1

    You inspired me to try to make a unity game! Gonna try to use free assets though since I’m cheap 😂 your game looks great, can’t wait for the next part!

  • @user-xt7el4nm7p
    @user-xt7el4nm7p 4 года назад +1

    Hello

    • @Wyvernnnn
      @Wyvernnnn 4 года назад

      ...

    • @DJAfter8
      @DJAfter8 4 года назад

      Hey there brothers!

    • @pointed.sphere
      @pointed.sphere 4 года назад +2

      So YOU are the reason for my horizontal scroll