Tag Archives: games

Setting up your Mac to create a Playdate app

This guide is written on macOS Monterey (v12.3).

playdate simulator

Here are instructions on setting up & running the most barebones app possible on macOS. There are probably better ways to do this, but here’s one way that works for me.

  1. Download & install the SDK via https://play.date/dev/

  2. Update your ~/.zshrc file with the following line:

    export PLAYDATE_SDK_PATH=/Users/rex/Developer/PlaydateSDK

    Obviously you want to replace “rex” with your username.

  3. Create a new folder for your project (anywhere)
    mkdir playdate_hello_world
    cd playdate_hello_world

  4. Create a VS Code folder & settings file
    mkdir .vscode
    touch .vscode/settings.json


  5. Put the following into your new settings.json file. Make sure to replace the 2 instances of “rex” with your username

    {
    "Lua.runtime.version": "Lua 5.4",
    "Lua.diagnostics.disable": [
    "undefined-global",
    "lowercase-global"
    ],
    "Lua.diagnostics.globals": [
    "playdate",
    "import"
    ],
    "Lua.runtime.nonstandardSymbol": [
    "+=",
    "-=",
    "*=",
    "/="
    ],
    "Lua.workspace.library": [
    "/Users/rex/Developer/PlaydateSDK/CoreLibs"
    ],
    "Lua.workspace.preloadFileSize": 1000,
    "playdate.sdkPath": "/Users/rex/Developer/PlaydateSDK"
    }


    (Apologies for the formatting. WordPress & code doesn’t mix well). You can copy & paste above (and make sure to replace the 2 “rex”s)

  6. Create a simple file for your app
    mkdir source
    touch source/main.lua

    Copy the following into main.lua:

    import "CoreLibs/object"
    import "CoreLibs/graphics"
    import "CoreLibs/sprites"
    import "CoreLibs/timer"

    function playdate.update()
    print "Hello world"
    end


    Obviously this code does not do very much. It’s super, super basic, but it compiles & runs!

  7. Install the following VS Code extensions (sumneko.lua, jep-a.lua-plus, and Orta.playdate)

  8. Run your app on the Playdate Simulator with VS Code.

    Press Cmd + Shift + P and select & run [Run app in Playdate simulator]

  9. That’s it! Your app is now running on the Playdate sim. You can view print statements by using Window > Console.

For more comprehensive details, refer to the SDK documentation: https://sdk.play.date/1.10.0/

For the sample files discussed here, see repo: https://github.com/xta/playdate_hello_world

Video game inventory

A game’s choice of inventory system can make gameplay worry-free or stressful. In the worst cases, managing your items can feel like work or make you not want to play at all.

Inventory comes in many forms. I’m specifically referring to the player’s management of limited inventory space. This space may include crafting materials, usage items, and collectibles. Sometimes, the item management & finding upgrades becomes the game, in the cases of the Diablo or Borderlands series.

Here is an inventory (get it? sorry) of my recently completed games and their handling of inventory. As you can tell, these are all single player games. No plot spoilers. Below are inventory mechanics ratings, not overall gameplay ratings.

The Legend of Zelda: Breath of the Wild – awful

The game has inventory for different weapon types. While you don’t need to max out your inventory size, it helps so you can collect different weapons. My issue with this game is the laughable item durability. Items break often with some usage. This was an intentional gameplay mechanic, but it made me conscious enough that I would strongly consider avoiding battles just to keep my inventory pristine. Given the choice, I would prefer a game with weapons that did not disappear completely, an affordable repair cost for broken weapons, and a more limited inventory size.

Horizon Zero Dawn – below average

In the resources section, your character holds trading parts, crafting material, and other items. By fighting enemies, you’ll usually pick up parts and materials. At the end of the game, I had a few of each part and a good amount of crafting materials. Crafting materials are important to have since you craft ammo to fight with. With my inventory maxed out at the end of the base story and at the start of the expansion (The Frozen Wilds), figuring out which parts to sell is such an ordeal that it’s killed my interest in exploring the expansion. Each new fight, I get more items that remind me my inventory is at capacity. This game would really benefit from a storage chest in town to offload parts that I don’t need constantly.

Control – acceptable

This game has weapon mods, personal mods, and confusingly named materials to find. While it is easy to fill up your inventory, the ease of cleaning up my inventory made the system a non-issue. Also, the game’s sorting options for mods (rarity, type, etc) made clean up easier.

Marvel’s Spider-Man: Miles Morales – good or N/A

This game doesn’t really have inventory. Miles has ammo counts for his gadgets, but those are easy to replenish. This game is all about swinging around Manhattan and fighting lots of well-armed enemies (somehow everywhere in the city).

The Last of Us Part II – good or N/A

This game doesn’t have a complicated inventory system. You can find crafting materials or collectibles. If you max out your crafting materials space, you can’t pick up anymore until you use it up. Fair enough.

Wrapping it up, I wish more developers would consider adding Quality of Life improvements after you complete the game. This could come in the form of a massively expanded inventory (if the game’s inventory size was typically limited).

In The Last of Us Part II, New Game+ lets you purchase and use gameplay modifiers (such as cheats), which made replaying the game notably different. Fighting tough monsters without worrying about ammo? Sign me up!

Multiplayer Maps

When it comes to a video game, there are many, many components that work together to provide the end user experience. High profile components include the graphics, the characters, and the plot. Details of these components make a big difference in gamefeel. How responsive is the game to player inputs? Does the game feel fair, balanced, and based on player skill?

I want to reminisce about video game maps. Maps are an integral part of the experience and it’s where you probably spend the bulk of your time in game. Map design isn’t as high profile as the character models and weapon choices, but maps are crucial to gameplay balance. Famous maps include Super Mario Bros.’s Level 1-1, Counter-Strike’s Dust2, and League of Legends’s Summoner’s Rift.

Multiplayer maps are interesting in PvP (player vs player) since map updates can rebalance the game over time. New maps in the Starcraft 2 map pool keep the game fresh over time. in a PvE (player vs environment) setting, balance is probably less of an issue since the gameplay is asymmetric.

In no particular order, here are 5 multiplayer maps that I’ve enjoyed (for personal, subjective reasons):

  1. CTF Twin Peaks – Infantry
    infantry
    Twin Peaks is a polarizing map. I spent most of my time in Twin Peaks (instead of maps like Eol, Mechanized Skirmish, etc.) constantly switching between the many available classes. Twin Peaks is a largely open world map, but it’s highly confusing for the newcomer. The teleporting ramps into bases or caves takes a moment to get used to. The map is also huge, since there are hills, bridges, and other outdoor areas where you are going to get sniped. Embrace the chaos of outdoor gun battles or indoor flag capturing.
  2. Big Game Hunters – StarCraft: Brood War
    bgh
    As any StarCraft player knows, economy/macro is king. You want as many minerals & vespene gas as you can get your hands on. BGH is the map for you. If you want to cheese AI or cheese friends, what better map to wall off and build your fleet of carriers on? BGH is not your typical competitive ladder map because of the high abundance of resources. Also, who can forget the happy face in the middle of the map? Genius.
  3. Pipeline – Call of Duty 4: Modern Warfare
    pipeline
    CoD: MW contains many memorable maps for me. I’m picking Pipeline here since it’s a map I can say that I dominated on (in the sparsely populated PS3 communities). There is a decent amount of vertical gameplay in the buildings, but otherwise this map is pretty simple. The gameplay on this map tends to be tightly packed and more close to mid range action. Getting onto the building roof is fun, but you will get easily punished once the other side catches on to it.
  4. Hang ‘Em High – Halo
    hangemhigh
    Halo 1 is well known for its novel gameplay mechanics: only carrying two weapons at a time, regenerating shield + health bar, and more. Hang ‘Em High brings memories since this was an awesome, epic map if you ever had the pleasure to play locally over LAN. Playing this map with CTF is oh so fun since the incredibly overpowered pistol lets you take out whoever’s stealing your flag with ease. In this map, knowing where to find the power-ups (rocket launcher, invisibility, sniper rifle, etc.) is key.
  5. The Secret Cow Level – Diablo II
    cowlevel
    The cow level in D2/D2X is a farming level to power level your character. The level design itself is pretty basic: an open field with dense packs of cows to kill for easy experience. Playing with strangers online, you had to be careful about people killing The Cow King. Much of my time playing D2X was spent in this map, trying to stay alive or clicking on dropped items.

Anyone who has played these games probably has a ton of memories on these maps – whether positive or negative. Maps provide the context or environment in which games are played. You can’t recall details of a game without thinking about a particular spot on the map where something happened.

New Bro: Double Bro Seven

Broforce is a satire of over the top ‘MURICA. It has different bros that let you play as different famous movie characters. The latest being Double Bro Seven!

doublebro7bro

In the Double Bro Seven update on 12/18/2014, the Special Command has been updated to depict each Bro’s currently remaining special ability. Double Bro Seven seems to be unique so far as the only one to have different Special Commands, whereas the others have one Special Command that is repeated a certain number of times. Also, this patch released a Christmas theme in the form of Christmas trees, presents, etc.