An online-only week-long game jam, using vintage computer files from archive.org.

devlog

pre-jam activities

april 10th

  • found out about the jam via sol’s tumblr post
  • judges and monetary prizes intimidate me, but the theme is irresistibly fun
  • not sure about participating, but i’m excited to see what everyone else makes

april 11th

  • still thinking about the jam
  • started looking around discmaster
    • first i searched for types of bugs, of course
    • obsessed with this dragonfly model “okay maybe i should make something for real”
  • no ideas for a game, but it might be fun to create a 3D environment for the first time
  • joined the jam on itch + joined the discord

april 14th

  • started adding to my list of interesting assets
  • ok wow bug life 3D looks awesome but i don’t know how to get the image files out
    • mounting didn’t work
    • extracting with winRAR didn’t work
    • briefly looked up iso rippers but the results seemed a little skeevy
  • i keep looking up models for outdoor scenes, but game environments are typically enclosed spaces…
    • could have the map just end. the player can fall off, flat-earth style
    • natural barriers: an island, thick forest, cliffs, rivers
    • bring the outdoors indoors greenhouse
      • sable’s vivarium
      • animal crossing’s museum bug room
      • biosphere 2

april 15th

  • greenhouse idea: greenhouse.wad + godot wad importer? (feels like starting — wait until the jam starts!)
  • thinking about game engines
    • pretty sure i’ll use godot
      • yayyy free and open source we love it
      • godot shaders library (could dither heheh)
      • compatibility w/ discmaster assets: wad importer tool linked above + this mdl importer
      • only concern is that it might be too big/powerful/complicated for me too learn in a week
        • that’s why i’m setting the bar for “done” at walking sim w/ no interaction
    • alternatives
      • rpg paper maker — “Making 3D games is too complex? RPG Paper Maker will simplify your work!” lol
      • sok worlds — i was looking for walking sim engines for beginners, and this is soooooo close to perfect. if only you could use discmaster assets instead of the pixabay api

april 16th

  • read godot docs > getting started > introduction
    • recommends taking an online course if you’re not a programmer, but… i don’t want to 😇
  • read godot docs > getting started > step by step
    • finally downloaded godot so i can follow along
    • not covered in the tutorial, but i chose the compatibility renderer
      • least advanced 3D graphics
      • supports web platforms
    • “We recommend dismissing architectural code patterns when making games with Godot, such as Model-View-Controller (MVC) or Entity-Relationship diagrams.”
      • good thing i don’t know what any of that means
    • ball physics — kind of fun
    • godot face spin script — kind of boring
    • player input — ok yaaaay
    • using signals — ack
      • i messed up the nesting of the nodes somewhow, and had the button as a child of the godot head sprite, so it was flying around. i tried to drag the button out into the parent (Node2D) in the scene tree but got an error message that i didn’t write down (sorry)
      • felt like i was going in circles trying and failing to reorganize the files/scenes/nodes/etc, so i deleted and remade them all instead
      • got the animation toggle button working, but now i’m bored. the next sections are about timers and health bars, which don’t feel relevant to what i’m trying to make, so i’ll skip them for now
  • new scene 3D scene drag dog.glb onto scene it’s there but sideways rotate dog upright yaaaaaaay
    • that’s enough for tonight

april 17th

  • feeling some friction against the types of games that had the biggest modding/freeware scenes
    • i search for “crow” and get only crowbars
    • i search for “apple” and get only grappling hooks
    • easy to find weapons, harder to find living things
      • most of the animals i’m finding were made as enemies to be killed
        • this cricket model has red eyes and two of the associated animations are “angry” and “die”
          • i’ll probably have to edit the eyes
      • (less true if you look at all file types but i’m looking for .glbs specifically)
  • feeling inspired by this image describing a high school research course

april 18th

april 19th

  • started Learn GDScript from Zero
    • first impression: what the hell did they do to the scroll behavior? i hate it
      • i’m on my touchscreen laptop and sometimes i like to scroll by swiping on the page directly. that doesn’t work at all here
      • scrolling with two fingers on the trackpad feels off somehow. a bit of lag(?) and it moves by a different amount than i expect every time
        • so unsettling that i ended up clicking and dragging the scrollbar instead
    • also i can’t highlight text
    • “Engineers at Tesla also used it for their cars’ dashboards.” (typed by hand because i can’t highlight text)
    • fuck this actually. who cares
  • no more tutorials until the jam starts, lest i get so bored i give up entirely
    • boring: “here’s how you make a game” i make a game exactly as taught
    • fun: “i want to make a game that does x, y, and z” i look up how to accomplish x, y, and z
    • agreed upon foundational knowledge is great for professionals and teams, but i’m just here to play with toys

jam time

april 20th

  • the jam starts today!! but at 10pm local time
    • that’s bed time
    • started getting sleepy at around 8:30 (remember that i’m recovering from a cold ok), but stayed awake long enough to get the discmaster care package
  • goodnight gamers

april 21st

  • good morning gamers. i created a new project in godot
  • downloaded the wad importer and greenhouse.wad mentioned on april 15th
    • followed along with the video demonstration (youtube link)
      • put everything in the new project folder
      • enabled the plugins
      • imported the map
        • map is there but has no textures
      • imported playerguy
        • playerguy is a white rectangle
      • pressed play
        • does not run! godot highlights some errors
    • when i imported the map, there were multiple options not addressed by the video. i left it as the default “Doom” but maybe i should have selected “Doom Mod” ?
      • Doom Mod option requires an IWAD and PWAD file path
        • IWAD: internal WAD, all data for a complete game
        • PWAD: patch mod, additional data
      • okay i see… maybe greenhouse.wad is a PWAD and i need the base doom IWAD
  • stopping here because i have to go to work!

lunchtime interlude — themes & goals

as i’ve used discmaster, the things that have inspired me the most are educational software and screensavers. i’d like to take elements from each kind of program and make a nice digital space to rest and maybe learn a few things.

i have almost zero game dev experience, so i don’t have a good sense of what’s feasible. regardless, here’s my plan:

  • minimum viable game — if i can do this, i’ll submit it
    • 3D environment that’s fun or interesting to be in
      • animated dragonfly model (essential)
    • player can look around, walk, and jump
      • mouse and keyboard support
      • controller support
  • intermediate goals — ideally i’ll figure these out
    • player can interact with objects in the environment
      • interact with a book to open a pdf from the internet archive
    • start menu screen
      • displays the name of the game
      • start and quit buttons
      • audiovisual transition from the menu to the world
  • advanced goals — erm. we’ll see
    • multiple maps/rooms
    • some kind of HUD
      • decorative border
      • displays the name of the room you’re in
      • compass and clock
        • day and night cycle would be sweet
      • player controls maybe
        • box that shows when/how you can interact with something
    • settings menu
      • volume, mouse sensitivity, Y-axis inversion, adjust shader(s)…?
    • …mobile support? (maybe after the jam)
  • okay yay i’m home from work and i downloaded DOOM2.WAD
    • reloaded assets with doom2.wad set as the IWAD and greenhouse.wad as the PWAD
      • imported the map
        • yaaaay textures
      • imported playerguy
        • yaaaay i can see playerguy
      • pressed play
      • ERROR: core/extension/gdextension_library_loader.cpp:350 - GDExtension only compatible with Godot version 4.3 or earlier: res://addons/godot-jolt/godot-jolt.gdextension

        • i’m running godot v4.4.1
  • downloaded godot 4.3
    • oh yay i can open the project i already started
    • enabled plugins
    • pressed play and it RUNS!!!
  • if i delete the gunManager node will it run, but with no gun?
    • player.gd:135 @ _ready(): Node not found: "visual/gunManager" (relative to "/root/Node3D/playerguy").

    • deleted lines 135-145 and from player.gd
    • another error
    • Ctrl+F for weaponManager
      • oh god it’s everywhere
    • it would probably better to make my own player character instead of trying to rework this one
      • don’t need 10 million nodes and scripts for my little walking sim
  • back to the map from greenhouse.wad — it doesn’t feel right for this
    • ceilings too low everywhere except the big slime pit area
    • i don’t think swapping out textures will make it into something i like
  • wad exploration (Shift+F to fly around the map)
    • GARDEN.WAD — not sure i’d call any part of this a garden
    • garden.wad — this… could work?
    • GARDEN2.WAD — this one has some sinister looking trees
    • LIBRARY.WAD — the bookshelf texture is so cute…
    • LAB.WAD — some wild rooms here
    • forest.wad — one big rectangle with a path and a river, plus a bunch of those sinister trees
  • most of the assets i’ve saved so far are mdl files, but it didn’t it occur to me until now to look for quake/goldsrc/source engine maps…
    • downloaded godot_bsp_importer and enabled the plugin
    • downloaded and imported a bunch of random maps, nothing stood out
      • gotta figure out the texture thing described in the README
      • watched the video tutorial but everything is so fast and i am tired

april 22nd

  • ffxiv patch 7.21 was released today, so i’m not going to spend much time on the jam
  • did a little CSS to make the game’s itch page look more like discmaster
  • little crisis of confidence — maybe a 3D game is too much?
  • potentially useful tools

april 23rd

  • bsp exploration
    • garden.bsp — middle area has some potential if i can figure out how to change the sky texture, maybe?
    • forestsanctuary — format not supported by discmaster… but i want to see it…
      • i tried importing it and godot crashed :(
    • padgarden.bsp — ooh a cute backyard. no textures imported though, and i still can’t figure out what’s going on in the video tutorial for the importer
    • all of these also had no textures, so i don’t have much to say: lighthouse.bsp, avenue1.bsp, villagev2.bsp, ruins.bsp, town.bsp, wq_town.bsp, atomic.bsp
    • arch.bsp — square room with arches. could make a nice little garden
  • figured out how to swap out some (but not all) of the textures in the quake maps that already have texture
    • select a ‘TransparentMesh’ in the scene menu on the left
    • select ‘Surface Material Override’ in the inspector menu on the right
      • <empty> Quick Load…
        • (i have a bunch of textures in my project already from importing the those WADs earlier)
    • oooooh i can access the rest of the walls by selecting ‘Mesh’
      • had to scroll past many ‘TransparentMesh’ nodes to find it
  • i feel like i should be able to do the same by selecting ‘MeshInstance3D’ in the untextured maps, but it isn’t working. the colors of things will change but the actual texture isn’t showing up
  • house.bsp is looking quite nice, compared to everything else so far
  • installed GOAT from the asset library
    • it doesn’t include the demo folder :(
    • downloaded v1.1.2 from github instead
      • this doesn’t include the demo folder either
    • downloaded master branch as a zip
      • erm… no demo?!?!?!
    • cloned repository
      • finally the demo folder is there. what the hell
  • well, it’s getting late. adventure gaming begins tomorrow

april 24th

  • i know that it probably would have been faster to throw together my own four wall map in godot, but i’m so committed to using an existing map from discmaster at this point
    • pushing the 100% discmaster asset use rule as far as it will go…
  • following goat docs > getting started > installation
    • main menu, settings, credit, and exit work, but if i click “play” in game…
      • Attempt to call function 'get_next_dialogue_line' in base 'null instance' on a null instance.

      • little yellow triangle next to line 62 of goat_voice.gd
        • looks like an indentation error?
      • intent line 62 run game press play it works :-)
  • quickly read goat docs > features
    • i think this will work well for me!
  • changing the font
    • converted courier-12.fnt to .ttf
    • made a fonts folder in the demo folder (the tutorial said it would be there, but it wasn’t) added courier
    • read the first paragraph or so of godot docs > ui > using fonts
    • read most of godot docs > ui > using the theme editor and got confused
      • made a new theme with courier, applied it to the menu scenes, but it did nothing. sad
    • applying the font through theme overrides in the inspector does work though
      • there aren’t many text labels, so it’s not too painful to change them individually…
  • replacing demo map with a beautiful .bsp
    • added and enabled godot_bsp_importer in this new project
    • more bsp exploration
    • added Courtyrd as a child of Gameplay and deleted Workshop
  • run current scene Player can walk around Courtyrd!! wow
    • Player gets stuck on certain parts of the map
      • stuck = can only look around, no walking
      • moved Player’s CollisionShape3D up a little bit no more getting stuck
    • where Player was getting stuck before still has an invisible wall… why?
      • starting Player on other side of it allows access to the other half of the map, but the wall is still there
      • shrunk CollisionShape3D to 10% of its original size Player can move without hitting invisible walls yay
        • too small! now Player can walk through fence
        • 50% works nicely
    • Player cannot climb stairs
      • problem for another day
      • should Player glide up? or jump?

april 25th

r/godot • 1 yr. ago
[deleted]

How do i make a ramp.

Beginner here, im making as a first game a platforming game, but, to gain verticality instead of jumping you use ramps and jump pads. My question is, how do you do you pull a ramp off? Is there some special scripting involved or do i literally just… like… make a prism with a shallow angle.

EDIT: I figured it out. Im and idiot.

STEP 1: Make a triangle

STEP 2: Profit

  • made CollisionShape3D as child of StaticBody in Courtyrd.tscn
    • set shape to BoxShape3D and adjust so that it’s a ramp over some stairs
    • doesn’t work
      • noooo the reddit post made me think it would be easy
  • didn’t take good notes while i was banging my head against the wall trying to get Player up the ramp
  • finally got it to a point where Player could go up the ramp but sometimes (?!) not down the ramp
    • with Player selected, i turned gravity enabled to ‘on’ and motion mode to ‘grounded’ in the inspector
    • also increased the floor max angle.
  • looked closer at Player.gd for clues
    • added apply_floor_snap() to a new line under move_and_slide()
      • i’m looking through my open tabs and browser history and cannot figure out where i heard of this
    • noticed a warning symbol in the scene menu next to GravityTimer
      • Very low timer wait times (< 0.05 seconds) may behave in significantly different ways depending on the rendered or physics frame rate. Consider using a script's process loop instead of relying on a Timer for very low wait times.

      • increased the wait time to 0.05 seconds
  • run scene Player reliably moves up and down the ramp

interesting assets

📁 = folder
✔️ = used in my game

final asset table

FileFormatSizeDate
courtyrd.bspQuake Map494.4 KB1996-08-14