As a wee lad, I played BBS door games like Legend Of The Red Dragon and Trade Wars 2000. While continuing to learn PowerShell, I decided to make my own. You play an IT tech, fighting alongside a team of techs against the forces of computer trouble.
PowerShell doesn’t offer the flexibility that other languages would. The first obstacle was how to distribute and control data between players. There’s no database, and there’s no web interface. The result was to use a shared cloud storage location and what are essentially cookies, which PowerShell just uses like a database. Some files are static, and some update constantly as the player uses the game’s functions. PowerShell then gathers them all and collates data with each new function call.
The interface is simple enough. Actions are made up of several functions, and players are given different internal options until the functions have completed. Outcomes are calculated and incorporated with the rest of the player’s stats. Some stats are common, like company health, and some are specific to the player, like kudos.
This is by far the biggest PowerShell project I’ve worked on. It took me a few months to get it where it is. It still needs testing and balancing, but that’s probably never going to happen at this point.
You can get the whole module here: GitHub – p01nd3xt3r/adventurenet