Month: June 2021

Game in a Font

World’s first video game in a font! You read that right! It’s a video game in a font! A font as in “Time New Roman”. The entire game is enclosed in fontemon.otf, no javascript, no html, all font. You can play it anywhere! Your word processor! Your image editor! Your code editor! Even works with syntax highlighting. All the places you should never play games, but now you can because no one will stop you!

How big of a game can you make in a font? Fontemon has

4696 individual frames
2782 frames in its longest path
131 branches from 43 distinct choices
314 sprites
1085 words of text
But, just how much content can you fit, if you push it to the limit?

Max: 2^16 frames (65536)
Max: Longest path ~3277 frames
Max: Branches are a bit more complicated.
Max: 2^16 (65536) sprites
Max: No specific limit on words, but other limits (frames, and sprites) apply
Of all of those, I really want to talk about #2 Max: Longest path ~3277 frames.
Every design decision I've made for this game:

How to draw the sprites
Which type of substitution to use (Ligature substitution)
How to handle branches (again, Ligature substitution)
was directly influenced by this limitation. In fact, of all of the limitations,
this is the rate-limiting step. Almost all optimizations I've done, have been to
push this number upwards.

UAV 3D capture

Yesterday autonomous drone manufacturer Skydio rolled out 3D Scan, an adaptive scanning software package that will greatly improve the workflow of those designing on top of existing spaces. They’re not marketing it that way, however; the rollout is aimed at the inspection industry, where large, complicated structures once had to be scaled by experienced climbers. With Skydio’s technology, you don’t even need a skilled drone pilot. Instead, you use their app to set boundaries around what structure(s) you would like captured, by dropping “pillars” around them. Then the drone’s software figures out the flight path it will automatically take, avoiding obstacles along the way. You choose the resolution, and the software figures out how many photos the drone will need to snap, tightening or loosening its flight path accordingly. The drone takes flight, and the model is generated in real time. You can then review the model on your device, on-site, in case you decide another pass is needed.

Mapping Angkor

Most people don’t realize that Angkor Wat is just 1 of more than 1000 temples in the greater Angkor region. This settlement may have been home to 900k people at its height in the 13th century. Angkor was comparable to the 1m people who lived in ancient Rome at its height. Researchers were able to map 10Ks of archaeological features at Angkor. Because Angkorian people built their houses out of organic materials and on wooden posts, these structures are long gone and not visible on the landscape. But lidar revealed a complex urban landscape complete with city blocks consisting of the mounds where people built their houses and small ponds located next to them. This work has created one of the most comprehensive maps of a sprawling medieval city in the world, leading us to ask: How did the city develop over time, and how many people lived here?

NeuroRights

Neuro rights advocates propose 5 additions to human rights: the rights to personal identity, free will, mental privacy, equal access to mental augmentation, and protection from algorithmic bias. Who owns the copyright to a recorded dream? What laws should exist to prevent one person from altering the memory of another through a neural implant? How do we maintain mental integrity separate from an implanted device? If someone can read our mind, how do we protect the read-out of our thoughts as our own?

Concept Refactoring

If you’ve ever maintained a Wiki, you’ve probably noticed that there is a lot of refactoring involved. Ideas are written down in one place, then rewritten, moved, titles changed, links redirected, pages split and merged.

Hypertext wants to be refactored. This is a feature of hypertext, not a bug. Through constant refactoring, knowledge in a hypertext network evolves to find the right packets for a given domain, where 1 packet = 1 idea. What if we introduced the minimum amount of structure for working with text? Something simple for people, simple for computers, and meaningful for both? That is my goal in experimenting with this new markup language, Subtext. Not formatting, but a kind of minimal markup for making notes legible so software can help you refactor them. “CSV for thought”.

I’ve found the same to be true for blogs with their tags, and better links over time.