Arcanum's Procedural Terrain Generation

Поділитися
Вставка
  • Опубліковано 26 вер 2024
  • I talk about how Arcanum used procedural generation to create our world and keep its storage cost low. The Arcanum map was 128 miles on each side, and it could have been 4.2 million miles on each side. Either way, that's a lot of map.

КОМЕНТАРІ • 71

  • @Dr_Slash
    @Dr_Slash Рік тому +78

    I reverse engineered Arcanum's procedural terrain sectors a couple of months back and was honestly surprised by how simple (or, rather, elegant) the algorithm was while still managing to effectively achieve its goal without breaking the illusion of a hand-crafted world. Great job!

    • @Baltasarmk
      @Baltasarmk Рік тому

      It’s called wave function collapse algorithm. They did not invented it

    • @Dr_Slash
      @Dr_Slash Рік тому +17

      @@Baltasarmk I'm well aware of what wave function collapse is, that's not what I was talking about. I meant the generation, storage, and handling of terrain data in general and how few elements were needed to sell the illusion that the world wasn't made up of repeating building blocks (i.e. each terrain type only has 4 unique base sectors and a few more for boundaries with other terrains).

    • @Eugensson
      @Eugensson Рік тому

      ​@@Baltasarmksmth like Wang tiles?

    • @THEEJONESY
      @THEEJONESY 8 місяців тому

      @@Baltasarmkfoolish

  • @TomaZxxZas
    @TomaZxxZas Рік тому +29

    The first time I played Arcanum when I was a kid, I didn't know that fast travel was a thing, so I walked all the way from the crash site to Shrouded Hills manually. I remember being both very impressed and irritated, and when I reached Shrouded Hills, that made me want to explore everything, since I knew I wasn't going to come back. It's only when I got the marker for Tarant when I realized that there's no way I can walk there manually and started clicking every single button to find fast travel lol

    • @Gadzinisko
      @Gadzinisko Рік тому +9

      And if I remember correctly Virgil suggest that you use fast travel at the crash site. But you knew better :>

    • @fredrik3880
      @fredrik3880 Рік тому +4

      Virgil indeed does that

  • @komlev88
    @komlev88 Рік тому +18

    I remember I was impressed by just walking infinitely.

  • @bencampbell5468
    @bencampbell5468 Рік тому +14

    Interesting to hear how you got stuff working. I was coincidentally just trying out the Arcanum editor yesterday, it's a pity that it seems to be very buggy on modern systems (I've heard the same from others too), because Arcanum doesn't have half the modding scene it deserves.

    • @fredrik3880
      @fredrik3880 Рік тому +3

      Arcanum has had few overhaul mods. Carcanum, professor bowtie, equilibrium and Arcanum Balance Mod (last one ive done). Which is more than Fallout 1 has had and up there or beyond what Fallout 2 has had. But i still agree that all those deserve many many more mods.

    • @rails-to-cosmos
      @rails-to-cosmos Рік тому +1

      The Arcanum Multiverse Edition is worth mentioning.

  • @CaffeinatedKing
    @CaffeinatedKing Рік тому +3

    I remember before or around Arcanum's release when I was about 12, my cousin rang me up to tell me about how he read in a magazine or a website that Arcanum's world was walkable from one end to the other, and went into how long it would take to do that. It blew my mind, "How could the game world be that enormous I don't know if my computer could run that, that's amazing." So after all these years, it's wonderful to learn how it works and how efficient it sounds.
    This does remind me though, I went through a brief phase of really wanting to learn to use the editor, but was never able to make heads or tails of it

  • @BruTalc
    @BruTalc Рік тому +9

    Tim you make the 15 minutes I have daily for lunch that much happier, every single day

  • @zanethezaniest274
    @zanethezaniest274 Рік тому +8

    Hey Tim, could u do a video about the companions of Arcanum, their inspirations and your ideas for their stories etc. Or maybe the potential companions for Journey to the Center of Arcanum.

  • @developerdeveloper67
    @developerdeveloper67 Рік тому +1

    I love creating game worlds and I found this to be very inspiring and exciting to watch, makes me want to go on and make a tile-based 2D game! The way you designed the world data to work was pretty clever. For those who didn't follow: the world was made of sectors, a sector would be a square area of 64x64 tiles, they were procedualy generated during the game, but always with the same result, because their seeds were based on their position in the game world. After generating them the game would replace the generated tiles for the developer changed tiles that were saved when editing the world in the world editor. That way you avoid having to store 64x64(4096) tiles for every sector of the game in the disk and in memory. Instead you only store the much fewer tiles that were actually edited by the developers. The file thing was also pretty clever. I'm surprised you though about that way back on the day, and when you only had 12 people working on the game, like you told us before. I think UE5 uses something similar technique now, it stores each object in a scene asset in a file, instead of storing the whole scene in a file, that allows every asset on the scene to be edited individually, which is obviously good for big teams which are the main focus of that engine.

  • @glr
    @glr Рік тому +2

    Best video yet! I love implementation-level, programming stories like this. You could talk about even more details, like the APIs you used, game geometry problems, repository infrastructure, etc.

  • @Lee.Moriya
    @Lee.Moriya Рік тому +1

    I love the technical topics like this, it's great to hear your enthusiasm for a system you designed even all these years later.

  • @GeomancerHT
    @GeomancerHT Рік тому +1

    Thank you a million for this kind of tech based talk, as I solo indie dev (main job at freelance consulting) I try to actively learn from your management/design talks, but this one I can just enjoy :D

  • @TheKotor2309
    @TheKotor2309 Рік тому +2

    I actually bought Arcanum yesterday because of this man’s “Humor in Video Games” video.
    I can’t wait to start playing.

    • @bubuasqw123
      @bubuasqw123 Рік тому +1

      Arcanum have the best evil character of the whole videogames industry.

    • @liviuperianu5499
      @liviuperianu5499 Рік тому

      ​@@AsphyxX-cx3kf The only mod still being developed is the Multiverse Edition

  • @StavrosNikolaou
    @StavrosNikolaou Рік тому +28

    The fact you did this in the late nineties is PRETTY COOL!!!
    I love when you dive into technical topics like that. Any tools and libs you found handy (like the little os wrapper you built during fallout) feel free to share their high level ideas and function :)
    Leonard mentioned during your interview that you build a pretty handy content generation tool for Arcanum. I would love to learn more about that.
    Also the proc gen tool/logic for npc greetings was awesome!!

  • @MaxPetak
    @MaxPetak Рік тому +2

    Thats my fav shirt you got in your arsenal.

  • @bratttn
    @bratttn Рік тому +2

    The methodology used in the 90's is as relevant as ever today.

  • @MetalAriel
    @MetalAriel Рік тому +1

    Tim, you are the man. I Love listening to you on YT. Thanks for all the content :)

  • @fredrik3880
    @fredrik3880 Рік тому

    Arcanum video awesome!
    I was always impressed by Arcanum and it is fun to hear how you did the tech back then.

  • @arcan762
    @arcan762 Рік тому +1

    Interesting how you guys had basically done an early kind of the now-popular Wave Function Collapse algorithm.

  • @bloodaxis
    @bloodaxis Рік тому

    I remember wondering how that was done when I played Arcanum the first time, love the insight!

  • @joaolimaoyt
    @joaolimaoyt 2 місяці тому

    Great detailed technical description. I was wondering how lighting of the map was handled?

  • @anthonyapm
    @anthonyapm 8 місяців тому

    This is so fascinating!

  • @legoyodascream
    @legoyodascream Рік тому

    A appreciate the smoking jacket for my half-orc character.

  • @exxyplaysandplays
    @exxyplaysandplays Рік тому +4

    This is fascinating stuff! As a huge roguelike fan, I always enjoy hearing about different approaches to procedural generation. Were you inspired at all by Daggerfall? It still blows my mind how big that world is compared to the later Elder Scrolls games.

  • @GypsumGeneration
    @GypsumGeneration Рік тому

    Thanks for sharing, Tim!

  • @HeavensDisciplesGames
    @HeavensDisciplesGames Рік тому

    It's interesting to see what was possible in the 90s when it comes to procedural generation.

  • @junkbucket50
    @junkbucket50 Рік тому

    It's amazing how much this reminds me of Minecraft's world generation. Amazing considering this is 15 years before

    • @huge_letters
      @huge_letters 11 місяців тому

      I think it's also interesting in the context of how often same good ideas emerge independently of each other just because they're that good and "natural"

  • @levkhromov4852
    @levkhromov4852 Рік тому

    Yet another amazing video, Tim. It would be very interesting to hear what technical challenges were overcome in fallout engine. Maybe some memorable tricks and hacks :)

  • @TwinOpinion
    @TwinOpinion Рік тому +1

    Simple and brilliant!

  • @Dorgrin
    @Dorgrin Місяць тому +1

    That’s awesome

  • @Anubis1101
    @Anubis1101 Рік тому

    I had so much fun with the world editor back in the day. It's a shame i abandoned the custom world i was making, but maybe i can re use those ideas in a future project

  • @2wdr5
    @2wdr5 Рік тому +2

    World map editor tutorial.... please... I neeeeeeeed new arcanum modules 😂

  • @FrostyChilli
    @FrostyChilli Рік тому

    This is really cool!
    I'd love to hear more about the technology of Arcanum.
    1) How were random encounters developed? Would it be possible to get a random encounter without using the map travel functionality, by just walking? I suppose one way is to spawn the NPCs once a "wilderness" sector is loaded in.
    2) How does the world simulate itself? If you drop an item in a sector (saved as delta), do the curious NPCs pick it up only when the player is near that sector? Is the AI simulated only near sectors where the player is? If the player leaves a sector does the game simply remember the last location of the NPC in that sector and when the player returns the game continues from there?

  • @ThePlaceCannel
    @ThePlaceCannel Рік тому

    Hey Tim! Love the videos. Not sure if you covered this before in an interview or in a video, but I wanted to know how you felt about the "Official" Fallout Cookbook and if there was anything about the recipes that you thought were interesting or were missing? Thanks! (Your videos helped me realize that there were recipes at the back of the Fallout manual, and thankfully that was preserved on the digital version on steam since I'm too late to the game and don't own a physical copy sadly.)

  • @esotericgamedev
    @esotericgamedev 11 місяців тому

    Very interesting

  • @blighthornsteelmace820
    @blighthornsteelmace820 Рік тому +1

    why in outer worlds interiors do not match exteriors (like window placing on the wall)?

  • @nutherefurlong
    @nutherefurlong Рік тому

    Has me wondering how other games of the time did it. It seems very logical to me... Given how rough some games are when they have a lot of detail I wonder if this is scalable to more modern ideas, but I guess at a certain level of detail the deltas might start to overwhelm?

  • @Hurlebatte
    @Hurlebatte Рік тому

    Speaking of Arcanum's editor, it's a big shame it couldn't edit the main game (I guess some people eventually found a way though). I think Arcanum would've had a big modding community.

  • @C5204
    @C5204 Рік тому

    You mentioned flying across tiles? I don’t remember any flying in Arcanum, is that part of teleporting ?

  • @aaronvold47
    @aaronvold47 Рік тому

    Awesome explainer... Now I know I can leave items on the ground in Arcanum. I was always afraid they will disapear so I store them in chests. At one point You said: "...save on art, save on space" - was number of CD really a concern in 2001?

  • @dwayneasher6765
    @dwayneasher6765 Рік тому

    I love the video what kind of game do you want to make next

  • @jumafallout
    @jumafallout Рік тому

    Chief, sorry to bother, but can you make a video as you explained the stats, but with Fallout traits and perks?

  • @greenya84
    @greenya84 9 місяців тому

    Pity that UA-cam allows to like video only once.

  • @xxxxxxxxxxxxxxxxxxxxxxxxl
    @xxxxxxxxxxxxxxxxxxxxxxxxl Рік тому

    So you could only correct an unsatisfactorily generated sector by adding deltas to it? I haven't tried this map editor, but I would certainly make the sector number only the default seed that could be overriden by a specified value to "reroll" it.

  • @jensinamart5153
    @jensinamart5153 Рік тому +1

    Of course Tim Cain would still have the code from a 20+ year old game he made LMAO

  • @EB-cz4te
    @EB-cz4te Рік тому

    Could you explain the random encounters? If you traveled in the real world of Arcanum long enough- from memory you could encounter enemies? Was this done differently for encounters like the Molochean hand?

  • @benrositas8068
    @benrositas8068 Рік тому

    Would it be possible to add a "dungeon" entrance as a random encounter, but one that also marks and remains on the map once triggered? If so, would it be possible to have so many of these added to the encounter list/table/whatever, and remove one as a chance of occurring again once it occurs?

  • @derogren
    @derogren Рік тому

    I wonder now, was there any particular reason Fallout wasn't shipped with any editing tools? Modding has come a long way since it was released.

  • @dsa3df3
    @dsa3df3 Рік тому

    It would be awesome if you could release the Arcanum source code.

  • @zekun4741
    @zekun4741 Рік тому +1

    You could fly in Arcanum?

    • @DGol2015
      @DGol2015 Рік тому +1

      Body of Air spell let you float a little ways off the ground.

  • @DaoistYeashikAli
    @DaoistYeashikAli Рік тому

    Comment for the Algorithm

  • @thinkmore8024
    @thinkmore8024 Рік тому

    You know what you could do, Tim? (crazy idea!) You could announce Arcanum 2 (the spiritual successor), and ask fans of the game to design a small Arcanum 1 world (a custom short campaign), and you guys could pick the best ones and give them Arcanum swag as prises, and better: offer them an internship at Troika 2. You could also do this as a part of kickstarter campaign to help to fund the game!

  • @developerdeveloper67
    @developerdeveloper67 Рік тому +3

    I think an interesting video you could make, Tim, would be your take on working on your own engines, then working with source, unity and unreal. What were it like to work with these engines? What did you like more? What would you do today, if you decide to work on a new game? What would you recommend to aspiring developers? I know for you that have been making games professionally since you were 16 plus have a cs phd, this is probably: "give me whatever I can work with that" lol, but I think for the younger aspiring developers and for the curious people like myself this would be an interesting topic to discuss!

  • @jayjasespud
    @jayjasespud Рік тому +1

    Maaan.. All this Arcanum talk just makes me want at least a spiritual sequel.

  • @CoolSmoovie
    @CoolSmoovie Рік тому

    Arcanum is one of the most interesting, complex, and smart games I have ever played. It NEEDS a rerelease cuz damn it’s a bitch to play today😭

  • @Bszulc11
    @Bszulc11 Рік тому

    I would like to go back to Arcanum so much. I've tried three times but I njust can't. Combat is just killing me :(

    • @TomaZxxZas
      @TomaZxxZas Рік тому +1

      If you play in turn based mode, it's not so bad

    • @liviuperianu5499
      @liviuperianu5499 Рік тому +3

      ​@@TomaZxxZas Firearms are hilariously underpowered

    • @Esquarious
      @Esquarious 3 місяці тому

      Fast turn based and a Charisma character with persuade and the harm spell is basically story-mode for the entire game.