Giter Club home page Giter Club logo

supaplexeditor's Introduction

Supaplex Editor (alpha)

This repository contains the source code for the game editor of an older game, but, in my opinion, still great puzzle game - you've guessed it, Supaplex.

Future?

This project hasn't seen some attention in a while. I have been trying to figure out what codebase the editor should be based upon. Currently, it's just Composer with some JavaScript. But, considering the nature of the application, it should berather based on JavaScript. And I'm not really friends with that language.

It is great, sure, I just dislike its logic, syntax, everything ... Also, there is an issue of an appropriate JavaScript framework. I thought to choose React, but I've still been struggling with learning it. But no worries.

Currently, my plans are to release the version 0.3 in a form that has a clear and extendable codebase. My decision is to implement React framework (JavaScript to handle UI and all interactions. Back-end is to be handled by Laravel Lumen (PHP), which is a lightweight version of Laravel designated for speedy API calls.

In next version

This section contains the lsit of all the features, tweaks and improvements to be majed in the next major version of

Feature list

This section is dedicated to general features that are to be available in Supaplex Editor in its final form (v1.0).

  • Be able to read other level formats (there is DAT, but also SP and MPX)
  • Make the editor at least as functional and capable as Supaplex Editor by ElmerProductions
    • Box selection
    • Shuffle (the entire level or its part) and random level
    • Left and right click functionality with the elements
  • Fix some glitches that that editor has
    • Having to change the level name at two places
    • Having to properly format the name
    • The ability to work with any size of level sets with any level sizes
  • Ability for user accounts where their level sets would be stored and could be downloaded
  • Give the user an ability to share their creations with the world, natively from the app.
  • Be able to work offline and auto-update at launch
  • Add toggle for gravity and freeze
  • Streamline the logic of infotron and electron count (All)
  • Add modes like:
    • Show dumb murphies
    • Warn about more murphies
    • Warn about no exit
    • Highlight special ports
    • Fix outer borders (will not be in the shuffle, cannot be changed)

The rest is (I hope) pretty self-explanatory.

How to install

After cloning the project, you need to run the following in the src folder:

composer install
mkdir cache

After that you should be good to go. Remember that the route of your project is the src folder, so do take that into consideration when running this project.

Branches

As of 18 March 2018, this repo has more than one branch publicly available. These are master and dev.

Master

Represents the latest release where current major features should work, and the app itself should be at least somewhat user-friendly.

Dev

Represents the release that includes huge feature implementations or refactors that are too big for a single commit/push. Plus, you can directly see on the way how I'm progressing and can add your notes on what you would change or improve.

Changelog

  • 0.2.2.1 (29 July 2018)

    • Fix of the wrong LEVELS.DAT file
    • Uniform GIT system across all branches
  • 0.2.2 (29 July 2018)

    • Replace LEVELS.DAT file with the original level set, rather than mine
    • Use only the 8-bit colour palette in the editor (to give it a more retro DOS-like feel)
    • New icons for editing in multiple modes - mouse, empty square and full square (currently not working)
    • You can change level name now (up to 23 characters only because of the game limitations)
    • Bug fixes
    • The editor identifies itself in the browser console
    • Other minor changes and improvements
  • 0.2.1 (16 July 2018)

    • Remove vendor and cache folders that were unnecessary for the repository (see the instructions for installation above)
    • Remove routes folder that didn't do much except for goofing around
    • You can now save changes made in a level (only the elements, the rest doesn't work yet)
  • 0.2 (15 July 2018)

    • UI overhaul
    • Code refactor
    • Added instructions for installation
    • Preparations for level saving
  • 0.1.1 (31 May 2018)

    • Bug fixes
  • 0.1 (31 May 2018)

    • OO structure has been implemented, but the code is very buggy, many features don't work properly
  • 0.0.x

    • Whipping up the project, the code, experimenting with different code structures

supaplexeditor's People

Contributors

benko11 avatar peterpisarcik avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

supaplexeditor's Issues

Can't run the project.

Can't run the project due to:
WebSocket connection to 'ws://localhost:3000/sockjs-node/076/jk1yiolt/websocket' failed: Connection closed before receiving a handshake response.

Steps to reproduce:

  1. Clone the repository and change the branch to DEV
  2. Open cmd and type - cd src and then npm install
  3. Start app with npm run start.
  4. Open browser console and you will see the error.

I assume that error is related to the bad configuration of react.

Things I've tried:

  1. Changed port to different one.
  2. Tried running the app with different terminals.
  3. Googling

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.