Skip to content

Instantly share code, notes, and snippets.

View Heliodex's full-sized avatar
📉
Programstinating

Lewin Kelly Heliodex

📉
Programstinating
View GitHub Profile
@Heliodex
Heliodex / updateAug25.md
Last active September 9, 2025 17:41
Heliodex's monthly project update, for August 2025!

Heliodex project update – August 2025

It's that time of the month again. The summer and its holidays are finally over, so here's a quick update on what I've been up to over August (and the first few days of September).

Work on Mercury 3 is getting back up to speed, and the site is now hosted again, albeit unreliably, for a basic alpha test. Taskmanager wants a beta testing phase to begin within the next week or 2. A new system for management of assets has been introduced, separating a few different categories of asset:

  • Builtins: Assets bundled with the client or studio. These are not requested from the site. (animations, humanoid scripts, studio plugins to an extent)
  • Privileged assets: Assets loaded directly or indirectly by scripts sent to the client. This includes:
@Heliodex
Heliodex / miu.fsx
Created August 29, 2025 22:54
Various programs for calculating the MU puzzle.
type MIU =
| M
| I
| U
type String = MIU list
let str (s: String) : string =
s
|> List.map (function
@Heliodex
Heliodex / updateJul25.md
Created August 12, 2025 22:48
July 2025 Heliodex project update

Heliodex project update – July 2025

Another project update! I never know what to write in the first paragraph of these things. Here's what I've worked on over the last month.

The documentation site on the docs branch has been updated with articles on installation of certain tools and further integration guides.

I've been experimenting with different ways to start up and manage Mercury's external services, mainly the Database and Economy service. This has usually been done with Docker, which is great when it works though often has issues on machines with poor support for virtualisation. Starting each process independently is difficult to manage. I tried using my own tool for this, which worked surprisingly well, but would shut down if its parent terminal was closed. Recently I tried Nomad, which

@Heliodex
Heliodex / updateJun25.md
Created July 13, 2025 17:45
Monthly Heliodex project update for June 2025

Heliodex project update – June 2025

Hey all, welcome to another project update. I've been inside drinking plenty of water and writing plenty of code recovering from the unbearable Scottish summer heat of over 15°C.

At the moment, I'm working on 2 branches in the Mercury Core repository: assets and docs. The assets branch contains some updates to the Economy service, allowing it to handle asset transactions for limited and unlimited assets. It also reduces the complexity of currency by making stipends constant and removing fees, which may destabilise the economy somewhat, but we'll find that out in the future. The docs branch contains a basic documentation site for Mercury Core and related services, which is still a work in progress. As outlined in [#389](https://github.com/tp-link-extender/MercuryCore/issues

@Heliodex
Heliodex / updateMay25.md
Last active June 13, 2025 13:43
Project update for May 2025

Heliodex project update – May 2025

Hello all, here's another monthly project update. The summer holidays have started, so I'm away at the moment, but I've still had lots of time to code some cool things.

The jokes, hoaxes, and memes have all turned out to be true. There will be a Mercury 3.

Mercury 3 will be hosted on the domain xtcy.dev. We have a working DLL hook for the 2013 client & studio (same as previous Mercuries) and a Windows Server VPS for running Mercury Core, RCCService, and related services.

@Heliodex
Heliodex / updateApr25.md
Created May 10, 2025 04:19
Monthly update for Heliodex's projects, April 2025

Heliodex project update – April 2025

Welcome, again, to another monthly update. This one's right in the middle of my exam season! How convenient.

Mercury Core is back to life now, after a few months of inactivity. The codebase has been given some much needed TLC & dedusting and I'm working on improving many of its parts – at the moment the 'communication' branch contains a rewrite of the forum, status updates, and asset comments into a single system, as well as improvements for likes/dislikes.

The database schema has also been significantly improved, the auth system has been rewritten without the need for Lucia v3 (thank you lucia!), all components have been migrated to use Svelte 5 syntax and features, fixes have been applied to the economy service, and many miscellaneous formatting and styling fixes have been made, as usual.

@Heliodex
Heliodex / updateMar25.md
Created April 10, 2025 19:27
Another monthly update to Heliodex projects for March

Heliodex project update – March 2025

Happy holidays! The year is Marching on, so I hope everyone is doing well; here's some updates on the projects I've been working on.

Coputer now features a number of 'program types' for programs to accept and return certain values. Current program types are as follows:

  • Test programs, which take no arguments and return nothing, for the purposes of debugging Litecode
  • Web programs, which take a few web request parameters and return a web response
@Heliodex
Heliodex / cex laptops.ts
Created March 19, 2025 22:23
Script I used to search all laptops on CeX through search.webuy.com
import data1 from "./250-350.json"
import data2 from "./350-400.json"
import data3 from "./400-500.json"
import data4 from "./500-550.json"
const hits1 = data1.results[0].hits
const hits2 = data2.results[0].hits
const hits3 = data3.results[0].hits
const hits4 = data4.results[0].hits
@Heliodex
Heliodex / updateFeb25.md
Created March 10, 2025 01:08
Heliodex monthly project update for February 2025

Heliodex project update – February 2025

Spring has sprung, the grass is ris. I wonder where the monthly project update is? Welcome back all.

Litecode is in the process of being rebranded! The name "litecode" will now only be used for the VM, standard libraries, and execution system. This means that the rest of the project, what I'm coining the "communication system", will be separate, and will communicate with the litecode execution system over a(n internal) network. Litecode will handle the execution and return of programs and their results, and should cancel them if they run for too long.

The combination of the execution system, the communication system, the protocols they rely on, and the network of these systems communicating with each other is being rebranded as follows.

@Heliodex
Heliodex / updateJan25.md
Created February 13, 2025 17:38
first 2025 monthly Heliodex project update

Heliodex project update – January 2025

Hello again! Your monthly update is here once again, with the usual side of assorted sections of rambling.

Some bug fixes and a better external API have been added, alongside four string library functions I was hesitant to implement: find, match, gmatch, and gsub. Pattern matching was, as I had suspected, a pain in the ass to get working. What next, maybe metatable support? Eh, perhaps if they actually turn out to be useful someday.

Pretty much all standard library functions apart from the really naughty ones have been implemented now, so I'll call it ready for further battle-testing as part of a larger-scale system. If any bugs crop up that I haven't caught yet, they'll probably be really insane time-sink ones.