Task List

This task list is really just for my own reference but in case you’re interested in what I’m hoping to do in the near future thought I’d publish it anyway.

High Priority Features:

  • Properly implement Age-Gating (added November 2019)
    Yup it’s a nasty world out there at times and we don’t want Johnny or Jane getting nassssty shocks my precious.  At least not shocks we can do something about beforehand, this is after all a site with user generatable content and scumbags usually can and will find a way through if they’re that determined.  Much consideration thought and effort is being directed at this issue, and has been a design consideration from day 1 (though I appreciate there is little to shout about in that respect yet apart from some voluntary BBFC warning signs).
  • A privacy policy and all the GDPR garbage (added Nov 2019)
    I’m mostly concerned about letting you know I do not farm or collect personal data needlessly or in any way visibly.  I do not share my ‘database’ with anyone (some sensitive details are encrypted beyond my sight or access anyway).  I intend to make 0 cash (in any cashflow scenario) from that route.  GDPR I am going to have to throw some cookie warning somewhere I guess, for the technically illiterate paranoids out there.  I need to get this formalised.  Mostly concerned about the age-gating paranoia which is understandable.  You don’t know me from Jack, after all.  The expected age range for this material is anything from 7 (early reading age say) upwards.  I have to consider many sensibilities, am fully aware of this fact, and do not take the responsibility lightly.

Wishlist End-User Features:

  • Enhance Book Management with features such as:
    1. Multi-User book editing system
    2. User Reviews and Ratings system for books – done
  • Extend Backup facility for Adventure specific backups
    1. Backup Adventure-specific ABML, SEL
    2. Output as collection of HTML files (all tags except <tt> stripped, convert <tt> to html <a> anchors) – current backup exports as 1 html file.
    3. Output as collection of XML files (requires XML definition)
    4. Output as 1 large XML file (requires XML definition)
    5. ? For all backups except HTML, how to handle all included SEL files?
  • Backup Facility for SEL Library (How to handle all included SEL files?)
  • Auto-generated GraphViz flowcharts for adventures feature – cannot be done until I have at least VPS hosting, DOT files done though. – sorta done due to someone else making a GraphViz interpreter freely available, but is not in-house
  • Design and Implement Images system – half done, no upload facility done needs a ‘waiting for approval’ area.
  • Re-Design Play areas pages to use templates and therefore allow customisable skinning
  • Make Cheats mode for playtesting (i.e. allow use of back-button) – nah, actually just make a cheat mode available in the game itself with as flag as already done in some adventures
  • Available SEL Functions drop-down (i.e. list of functions that are included through the document ‘include’ files) in both Book Editor and SEL Editor
  • Link checker script for Turn To throughout adventures (locates dangling to nowhere links, orphaned references etc.) – this is kind of achieved with the DOT files, but not satisfactory until I can automatically generate the finished Graph files automatically online.  Link checker still needed even if this is done though for ease of use. – nah the existing checker is fine
  • Auto generate ABML from HTML/Text – sorta done with the Slurper
  • Android App
  • Facebook App (combine with Facebook database and accounts facilities)
  • Customisable/Uploadable Adventure Skins
  • Automated SEL generation
  • Adventure Ratings System – done
  • Adventure links and orphaned reference checker – done
  • SEL online Command Line Interface (with thanks to a certain Facebook user for this idea it’s a bloody good one and would be extremely useful).

ABML Specific Tasks:

Languages

  • Make ABML XML
    1. define a DTD
    2. convert all existing references to DTD XML schema
  • Create a Book XML schema (tie in to full ABML XML schema…)
  • Add a ‘start’ attribute to xml definition for first actual adventure file.
  • Define Input tags for data input to script

System:

  • Properly hide if and else tag hidden attribute set content (currently still viewable through source as they are just html commented) (difficult)
  • Add code to make single-tag style invalid for use on non-applicable  tags. – done
  • Enforce lowercase tag usage (remove allowances for uppercase)

Documentation:

SEL Specific Tasks:

Language:

  • Namespacing for functions within libraries.  God knows how that’s done.
  • SEL – clarify/design NULL/undefined variable/constant handling – partially done
  • SEL associative arrays
  • SEL objects (yeah right!)
  • SEL variable references and therefore pass by reference (possible…) – done \o/
  • SEL method for gaining document information (tricky as the SEL engine is currently completely independant of ABML documents and I like it that way).  This may tie in to implementing the ABML ‘input’ tag using a general ‘environment’structure for SEL (similar to POST variables in CGI) – partially done, there is now a Command Line Interface structure for SEL, however POST data is still debatable.
  • SEL: Some method of allowing 2d6, or 4d8 etc. dice roll instructions (technically best approach: allow user defined operators with overloading capability also so that ‘d’ becomes an overloaded operator that calls the dice function.  Har har, and pigs will fly out of my butt tomorrow)
  • Full Null/Void definition handling for variables sorely needed.
  • Change &return from function to flow control.  Why on earth I thought this was suitable to begin with is baffling.
  • die/exit statement required
  • elsif required
  • Urgent error!  See news blog feed back in 2015 but functions sometimes just don’t work (something to do with double parenthesis) – uh i think this is fixed now?  not sure 2024

System:

  • Provide reference-specific associated SEL files – done but buggy, occasionally for unknown reasons overwrites associated ABML file!!!!
  • Correct error in literal string handling where a literal string beginning with a ‘&’ will attempt to execute a function (major rewrite may be needed)
  • $array[5+10] produces unpredictable results ($array[(5+10)] does as expected).  Investigate & Remedy.
  • Urgent undefined ‘null’ value variables passed as a parameter to a function will cause subsequent parameters to be ignored (noteable for mistyped variables etc.).  This is to do with while(defined(parameter…=shift)) loop control in process_function of exec_code

Documentation:

  • Make more specific and detailed reference on using the existing built in SEL functions
  • Make reference articles detailing how to use the ‘hosted’ SEL libraries e.g. the FF combat functions (ongoing)

Libraries:

  • Continue development of Hosted SEL function libraries
    1. Re-work (properly engineer) & Continue FF Combat Functions
    2. Rework & Continue Paper Doll function development
    3. Start Lone Wolf Libraries
    4. Continue stat library
  • Make FF Combat Library SEL return the output not print directly so that it may be re-called for combat altering events and displayable when suitable
  • Make SEL library versions for Multiple Party members (very difficult)
  • SEL library: dice function that reports dice results – done
  • Book library functions are overridden by included functions, this should not happen, book functions ought to take priority over library functions

CMS Tasks:

  • Examples everywhere – more detailed examples and how-to’s needed all over the shop
    1. SEL Editor
    2. Book Editor
    3. Book Management & Creation
    4. Create an Adventure Walk-through, beginning to end with interface guide
    5. Create an Advanced Adventure Walk-through (including using an SEL library)
  • Rework new CMS articles pages for appearance aspects and old links
  • Update and reword all pages
  • Make a downloads section for uncoded source material
  • Find a suitable new WordPress Theme?
  • Make CMS menus mobile browser friendly (basically flesh out the sub-menu master link pages with links to sub menu items)
  • Hosted Book articles –  add details about the books themselves (review/comment/author notes/precis)
  • Authors – continue gathering and collecting Author information for Author pages
  • ? Illustrators
  • Expand text allowed on featured content for this Theme, there’s bags of room and it cuts off early
  • Edit WordPress Login Page (must be confusing to some users) – get proper greaphic for logo and sort out the brown box left over from bad plug in
  • Find some way to remove ‘Create Account’ from Nav menu for logged in users

Forum Tasks:

  • Customise and Theme new Forum
  • Find out what the Admin link problem is with new Forum

Game Area Tasks:

  • ! Appearance.  This is pretty critical everywhere now (and has been since I began over 10 years ago).
  • Write up some more Hosted adventures!
    1. Write up as many as possible (all Gamebook systems) in plain <tt> format with reference notes for future development
    2. Re-work existing Hosted adventures to catch up with new Hosted SEL library improvements
    3. Make 2 adventures for each adventure – 1 with bare minimm tt implementation, 1 to be best latest coded attempt
  • Enhance Editor/Listing pages with JQuery/AJAX style interface functionality
  • Book Editor Auto tag doesn’t care if ‘turn to’ is actually ‘return to’ or similar.  Needs looking at.
  • Book Editor (and presumably in this case SEL Editor) Seems to remove 1 carriage return from beginning of file if the first entries in the file are only carriage returns :-s
  • Readers own notes section for Character Sheet (requires Input tag)
  • Book Editor to auto-correct abml/xhtml tags to lowercase
  • Generate HTML feature when saved (Firefox/IE so far) strips the end slashes off single tags for a reason I do not understand.  Viewing source and saving as a text document leaves it alone….? :-s
  • Document the HTML and DOT code functions
  • Add formatting to the DOT files for ‘bookend’ tags (success/failure codes), implement a ‘start’ code somehow
  • Auto-tag feature in book editor does not quite match a final ‘turn to 123’ correctly if it is the last text in the textarea element (it omits the last character from the match), the Javascript works fine on a standalone html document test I have no idea why this doesn’t work in the main document.

System (technical) Tasks:

  • !!! create a test area so that I don’t disturb users while working on the system
  • UTF-8 encoding:
    Still getting some UTF8 errors, specifically this seems to be apostrophes – i think this is done, just legacy chars from bad days remain
  • Change from flat-file system to MySQL Databse
    1. Create Database model
    2. Implement new set of PhP Adventure interface pages  – account.cgi, create adventure pages etc.?  (WordPress Templates?  Probably) (maybe leave as Perl – think so the crap I’m getting with pHp is awful))
    3. Probably have to leave SEL interpreter alone for now, jimmy-rig some kind of perl-php interrface between them
    4. Import all existing user book and bookmark data to new databse
    5. Work out how to reference WordPress Databse with new Database
  • Import Additional User Account information to WordPress Databse, and automatically do so for new signups – redundant, we store no info now
  • Make errors non-fatal everywhere (a LOT of work needed here) e.g. remove unnecessary ‘die’ statements in play.cgi (toward making more user friendly)
  • Make system for Rules accessible everywhere in adventure
  • sort out redirection headers on newacct.cgi, continue.cgi and startbook.cgi – eh?
  • Clean up debug files (done) & debug output system
  • Add code to make continue.cgi and startbook.cgi redundant (they really aren’t needed as seperate scripts)
  • Combine Create Book Listings (book_creator_account.cgi) and functions into main Book Listings (account.cgi), under the ‘Your Books’ heading just makes a hell of a lot more sense.
  • Convert play.cgi to just output content for actions/charsheet/reference and allow/create other scripts to worry about presentation.
  • Convert other scripts to play happily inside any CMS (output/receive only relevant information/data) – general restructuring probably needed.
  • Download Backup not working properly in Linux+Firefox, investigate & remedy

Management Tasks:

  • Find out if there’s anyone out there that fancies having a shot at a lot of this – I haven’t got enough hours in my life….
  • Continue organisation of this Task List
  • 20 or so old user accounts were not imported succesfully.  As far as I can make out this is due to duplicate usernames (since old system was case sensitive i.e. allowed USER and User and user, WP appears not to be so).  Track down and import somehow, or at least make note on system.
  • Continue tracking down Author information, collate and organise existing information
  • Check out GraphViz licensing issues (just need proper crediting info I expect)
  • Research Facebook app integration
  • Research Android apps
  • GET THIS SHITSHOW ON GITHUB/SOURCEFOURGE FFS

Design Tasks:

  • Design new layout and CSS system for Play area to compliment new CMS integration
  • Create and link up Facebook page/Twitter etc. – done FB

Adventure Tasks:

  • Make Turn-To only versions of all encoded adventures

Other:

  • SEO for ‘gamebooks’, fighting fantasy is covered but site appears nowhere for that.

One thought on “Task List”

Leave a Reply

Straight outta Blacksand

Skip to toolbar