Skip to content

A simple boolean game of chance for the web (CGI/Perl 4)

Notifications You must be signed in to change notification settings

Joz3d/Choose-a-Door

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Choose-a-Door

Retrocoder Presents...

Where are we?
...1993

A simple boolean game of chance for the web (HTML+' Fillable Forms/CGI/Perl 4)

Live Demo

http://joz3d.net/cgi-bin/door.pl

For a true retro experience, run it in Mosaic 2 (don't forget to click on each image to load it, or go to Options -> Auto-Load Images ☺️)

General Comments

What can I say about it... it's Perl 4, so all variables are global. It tracks players' sesssions by IP, which is probably the best method one came up with in '93.

Install

These are Apache-based instructions and will need to be adjusted respectively for other web servers.

  1. Make sure you have CGI enabled (mod_cgid)
  2. Disable web server caching of HTML and Perl scripts for this app. One method would be creating the following .htaccess file in the same directory you put this app in:
<filesMatch "\.(html|pl)$">
  FileETag None
  <ifModule mod_headers.c>
     Header unset ETag
     Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
     Header set Pragma "no-cache"
     Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
  </ifModule>
</filesMatch>
  1. In door.pl set $scriptloc, $assetloc, $homepage, and $homepage_name variables. ($scriptloc and $assetloc can be the same location)
  2. Optional, but you might wanna put in a daily/weekly/monthly? cronjob to delete temp-door-* files that are older than an hour or so (even though they are literally 1 byte a pop) just for cleanup reasons. The script tries to do its best job of cleaning up temp files, but can't really account for mid-game quit-outs.

About

A simple boolean game of chance for the web (CGI/Perl 4)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages