Musical Otaku - Programming and Web Design
PROGRAMMING AND WEB DESIGN
Home
On This Page:
-My I.T. Resume
-How This Site Is Built
-Download Diplodocus PC Games


How This Site Is Built
Aside from my early-years experience with QuickBasic (some of which can be sampled below, as well as on the Diplodocus Game Design page), I started my IT career and learned MS Access database-management using Visual Basic, and cgi-programming using Perl, both of which went into the fabrication of this website. First is an MS Access database, with extensive functionality and features to make it as efficient as possible. From the start, my plan was to use this database to track my CD collection, but throughout the years I occasionally revisited it to add new tables and features. The most extensive re-design came in 2006 with the addition of cosplaying- and convention-management into the database structure. This database has a feature that lets me dump the entire data into text files. These files are then uploaded to the server where my site is hosted, and where I've built an exact duplicate database structure as my MS Access one. This duplicate database is in MySQL.
_________________________________________________________________
I then run a script I wrote to flush all the data from the MySQL database, and re-load it using the text files. Instantly, my website is updated with new data, without having to change a line of code. New pictures and other documents are uploaded to the domain as well, and don't require any code changes, either. Each picture has a database record providing the code with all the information it needs to automatically add it to the website's appropriate galleries. Each one of those records also has a date field, which is what the "Recent Additions" sections of the main page rely on. When something is older than a few weeks, it automatically disappears from those sections. As for the website itself, it's written in Perl, with frequent SQL interaction with the database. Other than the one-liner "index.html" file that kicks off the site's main script, there is not a single static HTML page throughout the entire site. Everything is dynamic cgi. Some areas also have highly complex JavaScript and CSS.
_________________________________________________________________
The site does not rely on cookies. To maintain information from screen to screen, like the identify of the user and other form elements, it writes what it needs into temporary "context" files on the server. The name of that context file is always passed to each new page (either through a URL, or a hidden form element) and the page's cgi program opens the file and loads its contents into memory. The entire website uses only a single cgi program, called "kintaro.cgi" (named after Kintaro Oe from GoldenBoy, becase the script takes on the many different jobs the site asks of it). That script performs the nitty-gritty details every page needs, like parsing the URL's query string, loading the context file, authenticating, etc. kintaro.cgi then passes the page's particular request to the "yukinojo.pl" script (named after Mihoshi's navigational robot in Tenchi Muyo, because it takes any of the site's requests and fetches the matching code). To keep yukinojo.pl's size manageable, some of the code for certain pages was put in its own file.
_________________________________________________________________
Very often, kintaro.cgi, yukinojo.pl and the other scripts will call upon often-used functions, which are stored in the "mousse.pm" library (named after the hidden weapons specialist in Ranma ½, because its job is to always have the necessary piece of code up its sleeve). In my second IT job, we had a reporting library which could easily generate a report given a few parameters, even nested reports. I inspired myself from that technique to write "robo.pm" (named after the robot in Chrono Trigger, because it's an automated process that obeys the parameters it's given). And that is how the Musical Otaku is put together!


Diplodocus PC Games
Aliens.zip'Aliens: Space Hives': Turn-based military-strategy game for up to 4 players, based on the movie Aliens.Aliens ReadMe
Aventure.zip'Aventure Spaciale': A quick-reflex space flight game.Aventure Spaciale ReadMe
Boules.zip'Boules': 2-player game where balls bounce around the screen collecting capsules.Boules ReadMe
CTete.zip'Le Défi Casse-Tête': A sliding-piece puzzle game with too many features for its own good.Le Défi Casse-Tête ReadMe
Destin.zip'Destin': A silly very game of randomized name-calling, customized for eight specific old friends.Destin ReadMe
FG2.zip'Fighting Gear 2': A traditional RPG. The unfinished sequel to Fighting Gear.Fighting Gear 2 ReadMe
FightingGear.zip'Fighting Gear': My very first game! A turn-based RPG-style battle system.Fighting Gear ReadMe
Fleches.zip'Fleches': Up to 4 players controlling little arrows trying to catch capsules and avoid each other's trails.Fleches ReadMe
Goblins.zip'Warhammer: The Goblin Wars': The barebones of an RTS game that never went anywhere, yet had some promising premises.The Goblin Wars ReadMe
InfoVideo.zip'Info-Video': A database and survey on video games.Info-Video ReadMe
Jeu.zip'Jeu': A collection of six gambling mini-games.Jeu ReadMe
MapChamp.zipIf you've played Mapoland, you just owe it to yourself to try this one!Mapchamp ReadMe
Mapoland.zip'Mapoland': A mindless game of pure chance dressed up like a dungeon-exploration RPG with bagettes.Mapoland ReadMe
Nav.zip'Nav': A single sleek screen with nothing to do but stand there and get a close-up of a wall panel.Nav ReadMe
QuizBio.zip'Le sang et le coeur': A biology-themed quiz commissioned by professor Louise Bibeau.Le sang et le coeur ReadMe
QuizGame.zip'Examen 4.5': A set of quizzes on various topics.Examen 4.5 ReadMe
Star.zip'Star': Just a star that spins and rushes at you.Star ReadMe
Warbot.zip'Warbot': A very promising warbot-building engine, but with no game.Warbot ReadMe
Warhammer.zip'Warhammer': A plotless character-building RPG using the Warhammer system. My greatest game in terms of scope.Warhammer ReadMe
Warrior.zip'The Warrior's Revenge': A side-view platformer starring a naked hero with a sword and bright neon yellow shoes.The Warrior's Revenge ReadMe
World!.zip'The World!' aka 'The Vomit Plate': An extremely thorough attempt at a fully-immersive RPG world that never got finished.The World! ReadMe


Home