Official Blueberry Soft Hypermedia Adventure Game Construction Engine. https://obshagce.gamemaking.tools/
Go to file
rjt e9d3f93f20 Forum link 2022-05-31 06:45:40 +00:00
boards typo 2021-10-14 17:56:11 +11:00
images added some tiles 2019-01-05 11:23:53 +11:00
messages Fiddling, and adding link to external css 2020-07-12 14:23:50 +10:00
sounds Refresh 2018-01-13 04:07:52 +11:00
.editorconfig Grids (#3) 2018-04-04 00:31:00 +10:00
.gitignore Wow this directory's a mess 2020-07-11 11:24:48 +10:00
LICENCE Renamed 2020-07-12 14:35:48 +10:00
base.css Inconsequential tidying 2021-10-14 18:03:37 +11:00
games_list.txt Forum link 2022-05-31 06:45:40 +00:00
index.html Fiddling, and adding link to external css 2020-07-12 14:23:50 +10:00
messages.css Stylesheet for messages 2020-07-12 14:23:09 +10:00
readme.txt Forum link 2022-05-31 06:41:16 +00:00

readme.txt

----------- ----------- ----------- ----------- -----------

                         OBSHAGCE

   The Official Blueberry Soft Hypermedia Adventure Game
                    Construction Engine

----------- ----------- ----------- ----------- -----------

             https://obshagce.gamemaking.tools/
  https://www.gamemaking.tools/forum/categories/obshagce/
 … blueberrysoft.ryliejamesthomas.net/groups/obshagce.html
             https://tildegit.org/rjt/obshagce/

----------- ----------- ----------- ----------- -----------

 Hi!

 This is a little framework / template thing I'm working on
 for building hypermedia adventure games--simple
 collections of HTML and CSS and whatever media you want to
 stick in there.

 I've tried to keep things easy to understand, so avoided
 JavaScript and any ideas about trying to keep it as one
 page (EVIL). The only thing that's kinda dynamic (?) is
 the status window, which is an iframe. Otherwise each
 board is it's own HTML page with some inline CSS. There's
 a general style sheet (base.css) too.

 I hope this will encourage people to make more cool,
 personal websites. And explore the possabilites of a
 JS-free WWW.

----------- ----------- ----------- ----------- -----------
                           Goals
----------- ----------- ----------- ----------- -----------

 - Easy to read markup (semantic, and with comments).
 - Be a useful learning tool for HTML and CSS.
 - No JavaScript
   (but feel free to fork if you're into that).
 - Help show games can use simple technologies.
 - Promote cool, simple hypermedia.

----------- ----------- ----------- ----------- -----------
                     Project structure
----------- ----------- ----------- ----------- -----------

 /
 ├─ boards/
 │  ├── ...
 │  └── ...
 ├─ images/
 │  ├── ...
 │  └── ...
 ├─ messages/
 │  ├── ...
 │  └── ...
 ├─ sounds/
 │  ├── ...
 │  └── ...
 ├─ base.css
 ├─ games_list.txt
 ├─ index.html
 └─ readme.txt

----------- ----------- ----------- ----------- -----------

 So a game might work like this:
 You make a title/intro screen in index.html
 This points to HTML files in 'boards'
 These files have graphics and text and things you can
 click on in the cells on the right (what I call the map)
 and these open text, or HTML, or sounds, or whatever in
 the message widow in the lower left.
 You can also add some stuff to describe what is 'seen',
 'smelt', 'touched' etc., under the icons for those senses.

----------- ----------- ----------- ----------- -----------
                     Style Sheet Stuffs
----------- ----------- ----------- ----------- -----------

 Trying to explain the purpose / use of the IDs and
 classes used.

 Most of the CSS is in base.css, but some is kept in the
 HTML files so you can easily tweak things per-board, the
 colours, for example. Some CSS related to formating
 messages is in messages.css.

 IDs are to be used only once per page, but you can add
 classes wherever needed. You can even add multiple classes
 to an element.

----------- ----------- ----------- ----------- -----------

 Here's a diagram to show which section IDs and classes
 are effecting on the board pages.

 # signifies an ID
 . signifies a class

 ┌───────────────────────────────────────────────────────┐
 │                        #board                         │
 │                                                       │
 │ ┌────────────────────────┐ ┌────────────────────────┐ │
 │ │  #perception .window   │ │     #view .window      │ │
 │ │                        │ │                        │ │
 │ │┌──────────────────────┐│ │┌──────────────────────┐│ │
 │ ││        #senses       ││ ││         #map         ││ │
 │ ││                      ││ ││                      ││ │
 │ ││┌───┬───┬───┬───┬───┐ ││ ││┌───┬───┬───┬───┬───┐ ││ │
 │ │││   │   .icon   │   │ ││ │││   │   │   │   │   │ ││ │
 │ ││├───┼───┼───┼───┼───┤ ││ ││├───┼───┼───┼───┼───┤ ││ │
 │ │││   .description    │ ││ │││   │   │   │   │   │ ││ │
 │ ││└───┴───┴───┴───┴───┘ ││ ││├───┼───┼───┼───┼───┤ ││ │
 │ │└──────────────────────┘│ │││   │   .cell   │   │ ││ │
 │ └────────────────────────┘ ││├───┼───┼───┼───┼───┤ ││ │
 │ ┌────────────────────────┐ │││   │   │   │   │   │ ││ │
 │ │    #message .window    │ ││├───┼───┼───┼───┼───┤ ││ │
 │ │                        │ │││   │   │   │   │   │ ││ │
 │ │                        │ ││└───┴───┴───┴───┴───┘ ││ │
 │ │                        │ │└──────────────────────┘│ │
 │ └────────────────────────┘ └────────────────────────┘ │
 └───────────────────────────────────────────────────────┘
----------- ----------- ----------- ----------- -----------
 IDs:

 'board'        For all elements on the game boards.
 'titlescreen'  For all elements on the titlescreen.

 'view'         The window containing the map.
 'map'          The actual map grid.

 'perception'   The window containing sense information.
 'senses'       The grid containing the icons and
                descriptions for the senses.

 'message'      The window where messages appear.

 'credit'       For credits on the titlescreen.
 'notes'        For the notes section on the titlescreen.
 'splash'       For titlescreen images. You may or may
                not want the border.

----------- ----------- ----------- ----------- -----------
 Classes:

 'cell'         The individual cells that contain map
                content.

 'icon'         The cells that contain the sense icons.

 'description'  The cells that contain the sense
                descriptions.

 'title'        Title above game board. Game title or
                board title or ???.

 'window'       References elements that make up the main
                three windows, but exludes their contents.

 Also included at the end of 'base.css' are some clases you
 can apply for graphic effects. For example alignment and
 rotation.

 'align_*'      For easily alligning things in cells.

 'empty'        To make a cell as empty. It removes the
                border, so if used in the main game board
                the cell will not be indented.

 'no_scale'     For images you don't want to scale to fill
                a cell.

 'rotate_*'     For rotating elements, in 90 degree
                increments.

 'flip_*'       Flips the element on the vertical or
                horizonal axis.

 'shape_*'      Changes elements' shape.

 And some classes for animated effects :)
 These are disabled if a user has set their OS or browser
 to reduce animation.

 'blink'        Replicates the old <blink> tag. You can
                easily set the speed to your liking.

 'cycle'        A colour-cycling effect. Quickly cycles
                through a set of colours. Colours are easy
                enough to change. If you want to add more
                you'll need to add more steps (the numbers
                with the percent signs).

 'flipanim_*'   Repeatedly flips an element (like an image)
                for a simple animation effect. Like a
                downwards walking animation in an NES RPG.

 'rotateanim_*' Repeatedly rotates an element in 90° steps.

----------- ----------- ----------- ----------- -----------
 HTML

 <base target="message_frame">
                This makes links open thing in the message
                window unless told otherwise. Other targets
                you might find useful are
    _self       to open in the same window, and
    _blank      to open in a new tab or window depending
                on how the person's browser is set-up.

----------- ----------- ----------- ----------- -----------
----------- ----------- ----------- ----------- -----------