Continue reading “Clever Code and Debugging”Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
Brian Kernighan
Here are my goals to make 2021 amazing
Apparently, I have a bit of a thing for living under a rock! The whole year of 2020 has really proven that I’m far too good at doing that. No surprise that the previous dreadful year did a number on my motivation to work on things. Although we may not be out of the woods with the pandemic yet, there’s a handful of things I’d like to cover regarding the state of my projects. In particular, here’s what I hope to accomplish in 2021 so this year turns out exceedingly excellent.
Continue reading “Here are my goals to make 2021 amazing”A new host for ozzypig.com!
It’s my pleasure to announce that I’ve moved this website, ozzypig.com, to a new host: Vultr.com! After nearly 10 years on my previous host, I’ve moved to a host that gives me better speed, better uptime and most importantly: more control. I have learned so much about the web during that 10 years, and it’s finally time I take the reins.
Something else worth mentioning: the server hosting this site is beefier, which means I can host more software than just my website. Web services for my Roblox games will also live here, as well as some continuous integration software for DevOps type stuff. Exciting!
Previously, web traffic to this site was proxied through Cloudflare. Unfortunately, the mail server was also on the same host, and its traffic wasn’t proxied! This revealed the web server IP, which wasn’t a huge deal, but it made using Cloudflare kinda pointless.
A separate mail server is now set up – I am configuring it myself to suit my needs. (If you have notice mail failing to send, that’s probably why.) Cloudflare’s still being used for my web server, though!
I’ve chosen to move to Vultr because I’m familiar with their excellent platform and love their wide variety of services. I know that sounds like a super generic endorsement, but seriously: you’ll probably find something useful on their platform (general cloud compure, S3-compatible storage, load balancers etc). Their support responds fast and they’re friendly: I’ve never had an unpleasant time when working with them.
Don’t hesitate to contact me (eg. through Twitter) if you notice anything about my website that seems off.
Disclaimer: Links to Vultr.com within this post use my referral link. By visiting their site via these links and using their services, you can support this website directly. I don’t often endorse products, except when they’ve really been useful. Thank you!
Introducing: Modules
It’s my pleasure to announce Modules, a simple dependency loader for Roblox!
Modules comes with goodies, too: Event , Maid and StateMachine classes just to name a few. These patterns are so commonplace in Roblox development today, they felt right at home to be included.
With Modules, you can require strings instead of ModuleScripts. This greatly simplifies your scripts’ dependencies and streamlines creation of client and server code.
1 2 |
local require = require(game:GetService("ReplicatedStorage"):WaitForChild("Modules")) local MyModule = require("MyNamespace:MyModule") |
Download: Model on Roblox.com, GitHub releases
Links: Documentation, Repository on GitHub
Hunger Games: Game Integrity Updates
This week I’ve been releasing integrity updates to the Hunger Games which should fix many long-standing issues. Thank you to the community for helping identify these bugs.
- Part 1 (May 21):
- Change: The torch heals
1% hp/s→ 1.5% hp/s - Fix: Projectile weapons work properly upon respawning.
- Fix: Certain faces no longer break the server.
- Fix: Healing from the torch can no longer be stacked.
- Fix: Reduced outlines on the skybox texture.
- Change: The torch heals
- Part 2 (May 22):
- Fix: Shop, Spectate, Help and About windows scale on small screens better!
- Fix: Melee weapons cannot deal damage until they’ve been equipped for a moment.
- Fix: Ranged weapons fire properly when picked up from the ground.
- Fix: Text is now properly filtered in sponsor notes.
Fix: RBXL files don’t open Roblox Studio properly
Hey all, I fixed this issue the other day. It took a little know-how, so I figured I’d write about it here in case anyone else ran into this. Hello to anyone from Google or the great beyond.
The Problem: Opening RBXL files in Windows Explorer starts Roblox Studio, but fails to actually open the RBXL file. (May also happen with RBXLX files, the XML counterpart to the binary RBXL files)
Continue reading “Fix: RBXL files don’t open Roblox Studio properly”
New Plugin: Script Templates
This is a simple plugin that makes it super easy to insert Class and Subclass ModuleScript templates with the simple click of a button!
repr — function for printing Lua tables
Hey all!
I wrote a function that will come in handy when printing tables in Lua. Normally, when you call print
on a table, it is first tostring
-ed into a memory address and looks something like table: 000002074CD2C070
. How unhelpful! If only there was a better way…
I’ve created a function, repr
, that works like Python’s repr. It returns a nice, printable representation of Lua values (strings, numbers, bools, and of course tables). It is designed with two goals in mind: (1) be as close as possible to a literal code representation and (2) be as useful as possible during debugging. Check it out at this GitHub repository, or keep reading this post!
1 2 3 4 5 6 7 |
local repr = require(3148021300) local myTable = { hello = "world"; score = 5; isCool = true; } print(repr(myTable)) --> {hello = "world", isCool = true, score = 5} |
New Plugin: Ban Hammer
Introducing my newest plugin for Roblox Studio: Ban Hammer! It is a very easy-to-use tool that allows you to ban users from your game right from studio.
Hunger Games now has an Official Discord Server!
Hey everyone, after patching an issue with chat in The Hunger Games, I realized there ought to be an official hub for the game’s community. So, without further ado, here’s an invite for all players of the game: https://discord.gg/eFswv2b
Continue reading “Hunger Games now has an Official Discord Server!”