Engines NIFE Roadmap Shatterloop Game Projects
Deprecated Saepes Mundi Other Projects Blog

Game Projects

XIFNET Checklist

Posted December 19, 2023 by Xhin

Next Steps

  • Make a new GPP essentially but with more aesthetics on adding/edit and locked to the editor of the maze. Make sure you're logged in, etc.

  • Edit mode should also have paths

  • Basic item stuff (inventory, get, require)

  • More complex stuff

  • Anything else in the notes post

  • There are 4 Replies


    Add a new maze

  • Handle errors server side

  • This checks to see if the title or slug exists. If the title exists, it returns an error. If the slug exists, it returns the adjusted groupslug. Additionally, shorten the slug to 50 characters before doing this.

  • If an error, indicate it. If a groupslugged slug, change it. Either way don't let you click submit until the issues resolve.

  • Check the username against the database and if it's not one you're logged in as, indicate the error accordingly.

  • Allow you to pick "private" or "alpha" as its status.

  • Submitting inserts the maze into the database and then goes to the appropriate URL.

    New Mazes

  • Have a link to your own mazes.

  • This runs essentially the same logic but filters mazes under your uid. Their published status doesn't matter.

  • December 20, 2023
    Xhin
    Sky's the limit

    Maze Editing: Basic Stuff

  • Build out the database. Should be reasonably straightforward. Requires and items are both stored separately, and otherwise it resembles a GPP. But check the notes post to be sure.

  • Build out an editor database that pairs a uid and a mazeid to a page number.

  • On maze creation, create a blank maze page. The title should match the title of the Maze. Create an editor entity, and give it the appropriate pageid. This pageid should also go in the database as the "first" page.

  • On a maze play, if you're the owner of the maze, have a link up at the top of the screen that goes to the appropriate edit page for that page.

  • Said edit page both here and the link under "My Mazes" should be a URL that targets that specific pageid. In the case of "My Mazes", it will instead be the pageid assigned to the editor entity.

  • January 19, 2024
    Xhin
    Sky's the limit

    Maze Editing: Editor

  • Do another hard check to make sure the editor is actually the editor. Otherwise, redirect to the play area.

  • Allow you to adjust all the variables in the database.

  • Create a submit function that acts accordingly.

    Maze Editing: Play

  • Create a database table for players. This pairs the uid and mazeid to a pageid.

  • Create a table for their items. This should just be uid, mazeid, itemid, amt.

  • Create a table for items. mazeid, itemid, cat, name.

  • Create a table for categories. mazeid, cat, name.

  • When you first play a maze, if a player entry doesn't exist, create it and set the pageid to the starting pageid of the maze.

  • Render the current page to the page.

  • The links should run through ajax and get the appropriate data and update the interaction space accordingly. Kinda like how the GPP works -- but should be pretty straightforward to just reprogram from scratch.

  • January 19, 2024
    Xhin
    Sky's the limit

    Items Notes

    I'm not sure yet how to program this, but the basic idea is that you have an input area where you can type in stuff like "Key 2", "W Token x2" or whatever. These items probably get created at this point and then the space gets altered so they're blocky links that you can instead delete if you want. Items aren't intrinsically paired to a page -- deleting them here just removes them from the page, unless that page contains the only instance of them. It makes more sense to just have delete+recreate rather than "rename" if you make a mistake.

    Category filtering should be automatic -- there should obviously be a page for their settings, but it should assign the appropriate category automatically so you don't have to do anything special. "Key" and "Event" should automatically have these rules set up and be created on maze creation.

    There should be a way of editing categories to indicate whether the items in it are unique (this really only affects the way the amts show) and whether they need a keyring. Which I'll need to program separately.

    January 19, 2024
    Xhin
    Sky's the limit

    Reply to: XIFNET Checklist

    Username
    Password