Code Monkey home page Code Monkey logo

thesuncat / octopuzzler Goto Github PK

View Code? Open in Web Editor NEW
12.0 0.0 1.0 172.13 MB

A short octopus-themed indie game developed by two high school students, originally for 2021’s GMTK Game Jam. Back up your (in-game) files before your (in-game) hard drive is filled with ink!

Home Page: https://2foamboards.itch.io/octopuzzler

License: GNU General Public License v3.0

C 65.00% C++ 34.72% GLSL 0.12% CMake 0.16% Shell 0.01%
indie game video-game gamedev game-development game-engine cpp opengl glfw soloud

octopuzzler's Introduction

Welcome to Octopuzzler!

— PREMISE —

Your goal is to solve all of the puzzles and move your files to the floppy disk before the octopus gets ink all over your computer. It will take guts. It will take tenacity. But most of all, it will take a hunger for the waffles you DESERVE.

From start to finish, the game should take around half an hour to complete.

— CONTROLS —

This game can be played entirely with the mouse! As the controls have proved difficult to explain through text in our playtests, we have elected to present them as animated guides throughout certain levels. If you are confused by the controls in later levels, refer back to the GIFs located in the "guides" folder.

— BORDERLESS FULLSCREEN —

Borderless fullscreen can be toggled with the F11 key!

— SPEEDRUN MODE —

To run the game in Speedrun Mode: On Windows, you can run "Start in speedrun mode.bat". On other platforms, open the Terminal and start the game with the --speedrun switch:

./Octopuzzler --speedrun

Doing this will launch your game in Speedrun Mode, unlocking all controls always and causing the game to reset completely on death.

— CUSTOM CONTENT —

Custom levels should follow the following format:

{
	"level" : [
		"WWWWWW",
		"WS  GW",
		"WWWWWW"],
	"controls" : ")", 
	"guideLeft" : "bind",
	"guideRight" : "moving",
	"author" : ""
}

The grid can be any width or height but should have rows of equal length.

  • W's represent Walls, spaces that cannot be moved into.
  • Spaces represent paths, spaces that can be moved into.
  • H's represent Holes, spaces that cannot be directly moved into but can be dashed over.
  • Each level should have one S, representing the Start, and one G, representing the Goal.

Where the "R" is present in the example are the control options for this level. Each desired control should be present within the quotation marks. To have every control unlocked, "*,()^_<>" should be in place of the example's ")".

- * is for Up.
- , is for Down.
- ( is for Left.
- ) is for Right.
- ^ is for Dash Up.
- _ is for Dash Down.
- < is for Dash Left.
- > is for Dash Right.

To claim ownership of your levels, put your name between the quotation marks after the "author" field. If you leave this field as "", your level will be by Anonymous.

The game has two spots available for Guides: one on the left ("guideLeft") and one on the right ("guideRight"). Available guides include "bind", "moving", or "multibind". To omit guides from your level, simply remove the field(s) "guideLeft" and/or "guideRight".

Levels are named "level" followed directly by the number in the sequence that they appear in. The example level shown above is called "level00" in the levels folder, res/StageData of the game folder. The base game has 15 levels, numbered from 00 to 14. Take note that these levels do not have a suffix such as "txt", denoting a text document. Instead of "level00.txt", the example level is simply "level00".

Incorrectly formatted levels will crash on load. Check the commas at the end of each line! GLHF!

Created by 2FoamBoards and TheSunCat. Music by Orchid.

octopuzzler's People

Contributors

thesuncat avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

swoorpious

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.