DEV Community

Cover image for Reading the Pulp Docs
Robert Mion
Robert Mion

Posted on

Reading the Pulp Docs

Up to this point

  • I have the Pulp editor using the example game
  • And two other games
  • I have downloaded one PDX
  • I have tweaked a few small things in a few views

Time to fill in knowledge gaps

I shall open the Pulp Docs.

And I shall learn all there is to know - generally speaking - about Pulp!

What I'm learning

Quick Overview

  • Sprites, Items and Exits are the only Layers that can have Behaviors
  • The player can 'bump' into a Sprite and 'walk over' an Item - those verbs are important distinctions
  • What I've been calling views are actually modes
  • The half-width font is meant for games with lots of text
  • Each room is composed of tiles - I kind of knew that, but it's great to get confirmation that that is all a room contains
  • There are four tile types: Player, Item, Sprite, World
  • There is only one Player in the game
  • Sprites are any interactive thing
  • Sprites are always solid
  • That means the player can't pass through them
  • Items are something the player can collect
  • Items are never solid
  • Items disappear when collected
  • The tile that was the Item is replaced by the tile chosen as the background color of the game
  • World tiles can be solid or not solid
  • All tiles can have multiple frames for simple animation - good to know there's no tile that can't
  • The five views in Song are called voices
  • The interactive keyboard is called a piano roll interface
  • A song can start looping at game start, room enter or game end
  • Sound is like Song, but pertains to Sprites and Items instead of rooms or game state
  • 100-step undo/redo! Nice!

Modes

  • I can write a custom collect function if I want to do more than replace an Item tile with a background-color tile when an Item is collected
  • Only one font per game
  • Solid tiles are easily identifiable with a red overlay
  • The blue overlay shows how a room will be cropped to display as the title card
  • There are several modifier keys that make manipulating one or more tiles very easy
  • I can change the layer to which a tile resides, with a few exceptions
  • World tiles can't be scripted to do or say anything
  • The default behavior when a player overlaps an item is very cool: tile replaced, variable auto-incremented
  • Of course, defining a custom collect function renders those default behaviors null and void
  • Tile frames that are part of an animation can be specified via scripting
  • The room that the player starts in is the starting room - the explains why the star-like icon appears next to only one room in the list of rooms
  • Creating more tile in the Player layer allows for different player appearance and animations
  • All Player behavior is attached to the first player tile, and selecting new tiles for the player merely changes the player's appearance - never affecting behavior
  • Single-tile exit connections are one-way
  • Exits can be covered by Sprites as a way of enabling a key-unlocks-door gameplay mechanic
  • Something about placing related exists next to one another instead of on top of one another
  • The second exit type - connecting room edges - is called an Edge Exit
  • Edge Exits don't have to be placed on the literal edge of a room
  • That's cool for games that want to have square rooms (with a HUD filling the extra space
  • Musical typing seems like it will be a lot of fun: play piano on my keyboard!
  • Oh, the voices are different sound frequencies
  • Each voice has different: characteristics, octave ranges, durations. Wow. I'm excited to play with sounds...some day!
  • Envelopes are a thing - how a note changes over time
  • Envelopes are a very complicated thing
  • Songs have parts: intro, repeating body
  • Songs have 32 bars while sounds have 4
  • Songs can have all five voices playing simultaneously while sounds can have only one voice playing at a time
  • The editor is wonderfully robust to allow rich song/sound editing
  • Notes are compared to pixels in that they are the atomic level of a Sound or Song, and richly editable
  • The Script editor should feel like Visual Studio Code for writing PulpScript: all of the perks when writing code in a dedicated development environment
  • Code is validated as it is typed and only saved when it can be successfully compiled
  • Errors appear below the editor to aid in troubleshooting

Etc.

  • Most editor actions (the seemingly most common ones) have a keyboard shortcut - many of whom leverage a modifier key
  • There are several options for getting assets into and out of Pulp

Knowledge gaps: filled!

  • I'm glad I read these after spending a lot of time in the editor, because it added a lot of clarity instead of overwhelming me
  • Although, Song and Sound seem pretty complex

Next, on to the other - far more technical - Doc: PulpScript!

AWS GenAI LIVE image

Real challenges. Real solutions. Real talk.

From technical discussions to philosophical debates, AWS and AWS Partners examine the impact and evolution of gen AI.

Learn more

Top comments (0)

AWS GenAI LIVE image

Real challenges. Real solutions. Real talk.

From technical discussions to philosophical debates, AWS and AWS Partners examine the impact and evolution of gen AI.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay